In [1]:
type('a') == str
import ee
ee.Authenticate()
ee.Initialize(project = "ee-harshitsharma182021")
In [2]:
# from google.colab import drive
In [3]:
CitiesData = {
"states":[
{
"state":"Andhra Pradesh",
"districts":[
"Anantapur",
"Chittoor",
"East Godavari",
"Guntur",
"Krishna",
"Kurnool",
"Nellore",
"Prakasam",
"Srikakulam",
"Visakhapatnam",
"Vizianagaram",
"West Godavari",
"YSR Kadapa"
]
},
{
"state":"Arunachal Pradesh",
"districts":[
"Tawang",
"West Kameng",
"East Kameng",
"Papum Pare",
"Kurung Kumey",
"Kra Daadi",
"Lower Subansiri",
"Upper Subansiri",
"West Siang",
"East Siang",
"Siang",
"Upper Siang",
"Lower Siang",
"Lower Dibang Valley",
"Dibang Valley",
"Anjaw",
"Lohit",
"Namsai",
"Changlang",
"Tirap",
"Longding"
]
},
{
"state":"Assam",
"districts":[
"Baksa",
"Barpeta",
"Biswanath",
"Bongaigaon",
"Cachar",
"Charaideo",
"Chirang",
"Darrang",
"Dhemaji",
"Dhubri",
"Dibrugarh",
"Goalpara",
"Golaghat",
"Hailakandi",
"Hojai",
"Jorhat",
"Kamrup Metropolitan",
"Kamrup",
"Karbi Anglong",
"Karimganj",
"Kokrajhar",
"Lakhimpur",
"Majuli",
"Morigaon",
"Nagaon",
"Nalbari",
"Dima Hasao",
"Sivasagar",
"Sonitpur",
"South Salmara-Mankachar",
"Tinsukia",
"Udalguri",
"West Karbi Anglong"
]
},
{
"state":"Bihar",
"districts":[
"Araria",
"Arwal",
"Aurangabad",
"Banka",
"Begusarai",
"Bhagalpur",
"Bhojpur",
"Buxar",
"Darbhanga",
"East Champaran (Motihari)",
"Gaya",
"Gopalganj",
"Jamui",
"Jehanabad",
"Kaimur (Bhabua)",
"Katihar",
"Khagaria",
"Kishanganj",
"Lakhisarai",
"Madhepura",
"Madhubani",
"Munger (Monghyr)",
"Muzaffarpur",
"Nalanda",
"Nawada",
"Patna",
"Purnia (Purnea)",
"Rohtas",
"Saharsa",
"Samastipur",
"Saran",
"Sheikhpura",
"Sheohar",
"Sitamarhi",
"Siwan",
"Supaul",
"Vaishali",
"West Champaran"
]
},
{
"state":"Chandigarh (UT)",
"districts":[
"Chandigarh"
]
},
{
"state":"Chhattisgarh",
"districts":[
"Balod",
"Baloda Bazar",
"Balrampur",
"Bastar",
"Bemetara",
"Bijapur",
"Bilaspur",
"Dantewada (South Bastar)",
"Dhamtari",
"Durg",
"Gariyaband",
"Janjgir-Champa",
"Jashpur",
"Kabirdham (Kawardha)",
"Kanker (North Bastar)",
"Kondagaon",
"Korba",
"Korea (Koriya)",
"Mahasamund",
"Mungeli",
"Narayanpur",
"Raigarh",
"Raipur",
"Rajnandgaon",
"Sukma",
"Surajpur ",
"Surguja"
]
},
{
"state":"Dadra and Nagar Haveli (UT)",
"districts":[
"Dadra & Nagar Haveli"
]
},
{
"state":"Daman and Diu (UT)",
"districts":[
"Daman",
"Diu"
]
},
{
"state":"Delhi (NCT)",
"districts":[
"Central Delhi",
"East Delhi",
"New Delhi",
"North Delhi",
"North East Delhi",
"North West Delhi",
"Shahdara",
"South Delhi",
"South East Delhi",
"South West Delhi",
"West Delhi"
]
},
{
"state":"Goa",
"districts":[
"North Goa",
"South Goa"
]
},
{
"state":"Gujarat",
"districts":[
"Ahmedabad",
"Amreli",
"Anand",
"Aravalli",
"Banaskantha (Palanpur)",
"Bharuch",
"Bhavnagar",
"Botad",
"Chhota Udepur",
"Dahod",
"Dangs (Ahwa)",
"Devbhoomi Dwarka",
"Gandhinagar",
"Gir Somnath",
"Jamnagar",
"Junagadh",
"Kachchh",
"Kheda (Nadiad)",
"Mahisagar",
"Mehsana",
"Morbi",
"Narmada (Rajpipla)",
"Navsari",
"Panchmahal (Godhra)",
"Patan",
"Porbandar",
"Rajkot",
"Sabarkantha (Himmatnagar)",
"Surat",
"Surendranagar",
"Tapi (Vyara)",
"Vadodara",
"Valsad"
]
},
{
"state":"Haryana",
"districts":[
"Ambala",
"Bhiwani",
"Charkhi Dadri",
"Faridabad",
"Fatehabad",
"Gurgaon",
"Hisar",
"Jhajjar",
"Jind",
"Kaithal",
"Karnal",
"Kurukshetra",
"Mahendragarh",
"Mewat",
"Palwal",
"Panchkula",
"Panipat",
"Rewari",
"Rohtak",
"Sirsa",
"Sonipat",
"Yamunanagar"
]
},
{
"state":"Himachal Pradesh",
"districts":[
"Bilaspur",
"Chamba",
"Hamirpur",
"Kangra",
"Kinnaur",
"Kullu",
"Lahaul & Spiti",
"Mandi",
"Shimla",
"Sirmaur (Sirmour)",
"Solan",
"Una"
]
},
{
"state":"Jammu and Kashmir",
"districts":[
"Anantnag",
"Bandipore",
"Baramulla",
"Budgam",
"Doda",
"Ganderbal",
"Jammu",
"Kargil",
"Kathua",
"Kishtwar",
"Kulgam",
"Kupwara",
"Leh",
"Poonch",
"Pulwama",
"Rajouri",
"Ramban",
"Reasi",
"Samba",
"Shopian",
"Srinagar",
"Udhampur"
]
},
{
"state":"Jharkhand",
"districts":[
"Bokaro",
"Chatra",
"Deoghar",
"Dhanbad",
"Dumka",
"East Singhbhum",
"Garhwa",
"Giridih",
"Godda",
"Gumla",
"Hazaribag",
"Jamtara",
"Khunti",
"Koderma",
"Latehar",
"Lohardaga",
"Pakur",
"Palamu",
"Ramgarh",
"Ranchi",
"Sahibganj",
"Seraikela-Kharsawan",
"Simdega",
"West Singhbhum"
]
},
{
"state":"Karnataka",
"districts":[
"Bagalkot",
"Ballari (Bellary)",
"Belagavi (Belgaum)",
"Bengaluru (Bangalore) Rural",
"Bengaluru (Bangalore) Urban",
"Bidar",
"Chamarajanagar",
"Chikballapur",
"Chikkamagaluru (Chikmagalur)",
"Chitradurga",
"Dakshina Kannada",
"Davangere",
"Dharwad",
"Gadag",
"Hassan",
"Haveri",
"Kalaburagi (Gulbarga)",
"Kodagu",
"Kolar",
"Koppal",
"Mandya",
"Mysuru (Mysore)",
"Raichur",
"Ramanagara",
"Shivamogga (Shimoga)",
"Tumakuru (Tumkur)",
"Udupi",
"Uttara Kannada (Karwar)",
"Vijayapura (Bijapur)",
"Yadgir"
]
},
{
"state":"Kerala",
"districts":[
"Alappuzha",
"Ernakulam",
"Idukki",
"Kannur",
"Kasaragod",
"Kollam",
"Kottayam",
"Kozhikode",
"Malappuram",
"Palakkad",
"Pathanamthitta",
"Thiruvananthapuram",
"Thrissur",
"Wayanad"
]
},
{
"state":"Lakshadweep (UT)",
"districts":[
"Agatti",
"Amini",
"Androth",
"Bithra",
"Chethlath",
"Kavaratti",
"Kadmath",
"Kalpeni",
"Kilthan",
"Minicoy"
]
},
{
"state":"Madhya Pradesh",
"districts":[
"Agar Malwa",
"Alirajpur",
"Anuppur",
"Ashoknagar",
"Balaghat",
"Barwani",
"Betul",
"Bhind",
"Bhopal",
"Burhanpur",
"Chhatarpur",
"Chhindwara",
"Damoh",
"Datia",
"Dewas",
"Dhar",
"Dindori",
"Guna",
"Gwalior",
"Harda",
"Hoshangabad",
"Indore",
"Jabalpur",
"Jhabua",
"Katni",
"Khandwa",
"Khargone",
"Mandla",
"Mandsaur",
"Morena",
"Narsinghpur",
"Neemuch",
"Panna",
"Raisen",
"Rajgarh",
"Ratlam",
"Rewa",
"Sagar",
"Satna",
"Sehore",
"Seoni",
"Shahdol",
"Shajapur",
"Sheopur",
"Shivpuri",
"Sidhi",
"Singrauli",
"Tikamgarh",
"Ujjain",
"Umaria",
"Vidisha"
]
},
{
"state":"Maharashtra",
"districts":[
"Ahmednagar",
"Akola",
"Amravati",
"Aurangabad",
"Beed",
"Bhandara",
"Buldhana",
"Chandrapur",
"Dhule",
"Gadchiroli",
"Gondia",
"Hingoli",
"Jalgaon",
"Jalna",
"Kolhapur",
"Latur",
"Mumbai City",
"Mumbai Suburban",
"Nagpur",
"Nanded",
"Nandurbar",
"Nashik",
"Osmanabad",
"Palghar",
"Parbhani",
"Pune",
"Raigad",
"Ratnagiri",
"Sangli",
"Satara",
"Sindhudurg",
"Solapur",
"Thane",
"Wardha",
"Washim",
"Yavatmal"
]
},
{
"state":"Manipur",
"districts":[
"Bishnupur",
"Chandel",
"Churachandpur",
"Imphal East",
"Imphal West",
"Jiribam",
"Kakching",
"Kamjong",
"Kangpokpi",
"Noney",
"Pherzawl",
"Senapati",
"Tamenglong",
"Tengnoupal",
"Thoubal",
"Ukhrul"
]
},
{
"state":"Meghalaya",
"districts":[
"East Garo Hills",
"East Jaintia Hills",
"East Khasi Hills",
"North Garo Hills",
"Ri Bhoi",
"South Garo Hills",
"South West Garo Hills ",
"South West Khasi Hills",
"West Garo Hills",
"West Jaintia Hills",
"West Khasi Hills"
]
},
{
"state":"Mizoram",
"districts":[
"Aizawl",
"Champhai",
"Kolasib",
"Lawngtlai",
"Lunglei",
"Mamit",
"Saiha",
"Serchhip"
]
},
{
"state":"Nagaland",
"districts":[
"Dimapur",
"Kiphire",
"Kohima",
"Longleng",
"Mokokchung",
"Mon",
"Peren",
"Phek",
"Tuensang",
"Wokha",
"Zunheboto"
]
},
{
"state":"Odisha",
"districts":[
"Angul",
"Balangir",
"Balasore",
"Bargarh",
"Bhadrak",
"Boudh",
"Cuttack",
"Deogarh",
"Dhenkanal",
"Gajapati",
"Ganjam",
"Jagatsinghapur",
"Jajpur",
"Jharsuguda",
"Kalahandi",
"Kandhamal",
"Kendrapara",
"Kendujhar (Keonjhar)",
"Khordha",
"Koraput",
"Malkangiri",
"Mayurbhanj",
"Nabarangpur",
"Nayagarh",
"Nuapada",
"Puri",
"Rayagada",
"Sambalpur",
"Sonepur",
"Sundargarh"
]
},
{
"state":"Puducherry (UT)",
"districts":[
"Karaikal",
"Mahe",
"Pondicherry",
"Yanam"
]
},
{
"state":"Punjab",
"districts":[
"Amritsar",
"Barnala",
"Bathinda",
"Faridkot",
"Fatehgarh Sahib",
"Fazilka",
"Ferozepur",
"Gurdaspur",
"Hoshiarpur",
"Jalandhar",
"Kapurthala",
"Ludhiana",
"Mansa",
"Moga",
"Muktsar",
"Nawanshahr (Shahid Bhagat Singh Nagar)",
"Pathankot",
"Patiala",
"Rupnagar",
"Sahibzada Ajit Singh Nagar (Mohali)",
"Sangrur",
"Tarn Taran"
]
},
{
"state":"Rajasthan",
"districts":[
"Ajmer",
"Alwar",
"Banswara",
"Baran",
"Barmer",
"Bharatpur",
"Bhilwara",
"Bikaner",
"Bundi",
"Chittorgarh",
"Churu",
"Dausa",
"Dholpur",
"Dungarpur",
"Hanumangarh",
"Jaipur",
"Jaisalmer",
"Jalore",
"Jhalawar",
"Jhunjhunu",
"Jodhpur",
"Karauli",
"Kota",
"Nagaur",
"Pali",
"Pratapgarh",
"Rajsamand",
"Sawai Madhopur",
"Sikar",
"Sirohi",
"Sri Ganganagar",
"Tonk",
"Udaipur"
]
},
{
"state":"Sikkim",
"districts":[
"East Sikkim",
"North Sikkim",
"South Sikkim",
"West Sikkim"
]
},
{
"state":"Tamil Nadu",
"districts":[
"Ariyalur",
"Chennai",
"Coimbatore",
"Cuddalore",
"Dharmapuri",
"Dindigul",
"Erode",
"Kanchipuram",
"Kanyakumari",
"Karur",
"Krishnagiri",
"Madurai",
"Nagapattinam",
"Namakkal",
"Nilgiris",
"Perambalur",
"Pudukkottai",
"Ramanathapuram",
"Salem",
"Sivaganga",
"Thanjavur",
"Theni",
"Thoothukudi (Tuticorin)",
"Tiruchirappalli",
"Tirunelveli",
"Tiruppur",
"Tiruvallur",
"Tiruvannamalai",
"Tiruvarur",
"Vellore",
"Viluppuram",
"Virudhunagar"
]
},
{
"state":"Telangana",
"districts":[
"Adilabad",
"Bhadradri Kothagudem",
"Hyderabad",
"Jagtial",
"Jangaon",
"Jayashankar Bhoopalpally",
"Jogulamba Gadwal",
"Kamareddy",
"Karimnagar",
"Khammam",
"Komaram Bheem Asifabad",
"Mahabubabad",
"Mahabubnagar",
"Mancherial",
"Medak",
"Medchal",
"Nagarkurnool",
"Nalgonda",
"Nirmal",
"Nizamabad",
"Peddapalli",
"Rajanna Sircilla",
"Rangareddy",
"Sangareddy",
"Siddipet",
"Suryapet",
"Vikarabad",
"Wanaparthy",
"Warangal (Rural)",
"Warangal (Urban)",
"Yadadri Bhuvanagiri"
]
},
{
"state":"Tripura",
"districts":[
"Dhalai",
"Gomati",
"Khowai",
"North Tripura",
"Sepahijala",
"South Tripura",
"Unakoti",
"West Tripura"
]
},
{
"state":"Uttarakhand",
"districts":[
"Almora",
"Bageshwar",
"Chamoli",
"Champawat",
"Dehradun",
"Haridwar",
"Nainital",
"Pauri Garhwal",
"Pithoragarh",
"Rudraprayag",
"Tehri Garhwal",
"Udham Singh Nagar",
"Uttarkashi"
]
},
{
"state":"Uttar Pradesh",
"districts":[
"Agra",
"Aligarh",
"Allahabad",
"Ambedkar Nagar",
"Amethi (Chatrapati Sahuji Mahraj Nagar)",
"Amroha (J.P. Nagar)",
"Auraiya",
"Azamgarh",
"Baghpat",
"Bahraich",
"Ballia",
"Balrampur",
"Banda",
"Barabanki",
"Bareilly",
"Basti",
"Bhadohi",
"Bijnor",
"Budaun",
"Bulandshahr",
"Chandauli",
"Chitrakoot",
"Deoria",
"Etah",
"Etawah",
"Faizabad",
"Farrukhabad",
"Fatehpur",
"Firozabad",
"Gautam Buddha Nagar",
"Ghaziabad",
"Ghazipur",
"Gonda",
"Gorakhpur",
"Hamirpur",
"Hapur (Panchsheel Nagar)",
"Hardoi",
"Hathras",
"Jalaun",
"Jaunpur",
"Jhansi",
"Kannauj",
"Kanpur Dehat",
"Kanpur Nagar",
"Kanshiram Nagar (Kasganj)",
"Kaushambi",
"Kushinagar (Padrauna)",
"Lakhimpur - Kheri",
"Lalitpur",
"Lucknow",
"Maharajganj",
"Mahoba",
"Mainpuri",
"Mathura",
"Mau",
"Meerut",
"Mirzapur",
"Moradabad",
"Muzaffarnagar",
"Pilibhit",
"Pratapgarh",
"RaeBareli",
"Rampur",
"Saharanpur",
"Sambhal (Bhim Nagar)",
"Sant Kabir Nagar",
"Shahjahanpur",
"Shamali (Prabuddh Nagar)",
"Shravasti",
"Siddharth Nagar",
"Sitapur",
"Sonbhadra",
"Sultanpur",
"Unnao",
"Varanasi"
]
},
{
"state":"West Bengal",
"districts":[
"Alipurduar",
"Bankura",
"Birbhum",
"Burdwan (Bardhaman)",
"Cooch Behar",
"Dakshin Dinajpur (South Dinajpur)",
"Darjeeling",
"Hooghly",
"Howrah",
"Jalpaiguri",
"Kalimpong",
"Kolkata",
"Malda",
"Murshidabad",
"Nadia",
"North 24 Parganas",
"Paschim Medinipur (West Medinipur)",
"Purba Medinipur (East Medinipur)",
"Purulia",
"South 24 Parganas",
"Uttar Dinajpur (North Dinajpur)"
]
}
]
}
In [ ]:
In [ ]:
In [ ]:
In [4]:
import geemap.core as geemap
import geemap
timeinit = '2019-01-01'
timeend = '2019-01-06'
year = 2018
In [ ]:
In [5]:
# image = ee.ImageCollection("JRC/GHSL/P2023A/GHS_SMOD").filter(ee.Filter.date('1980-01-01', '2019-01-01'))
# smod = image.select('smod_code')
# m.setCenter(84, 25, 5)
# m.addLayer(smod.median(), {
# 'min': -100.0,
# 'max': 3000.0,
# }, 'Degree of Urbanization')
# dataset = ee.Image('Tsinghua/FROM-GLC/GAIA/v10')
# visualization = {
# 'bands': ['change_year_index'],
# 'min': 0,
# 'max': 34,
# 'palette': [
# '014352', '1a492c', '071ec4', 'b5ca36', '729eac', '8ea5de',
# '818991', '62a3c3', 'ccf4fe', '74f0b9', '32bc55', 'c72144',
# '56613b', 'c14683', 'c31c25', '5f6253', '11bf85', 'a61b26',
# '99fbc5', '188aaa', 'c2d7f1', 'b7d9d8', '856f96', '109c6b',
# '2de3f4', '9a777d', '151796', 'c033d8', '510037', '640c21',
# '31a191', '223ab0', 'b692ac', '2de3f4',
# ]
# }
# m.setCenter(-37.62, 25.8, 2)
# m.addLayer(dataset, visualization, 'Change year index')
In [ ]:
In [6]:
def ReflectanceData(timeinit, timeend):
m = geemap.Map()
try:
dataset = ee.ImageCollection('MODIS/061/MOD09A1') \
.filter(ee.Filter.date(timeinit, timeend))
# print('working')
except:
return ('NotFound')
TrueColor = dataset.select(['sur_refl_b01', 'sur_refl_b04', 'sur_refl_b03'])
TrueColorVis = {
'min': -100.0,
'max': 3000.0,
}
# m.addLayer(TrueColor.median(), TrueColorVis, 'True Color')
# print(ee.Algorithms.If(TrueColor.median().bandNames().length().eq(storage0),1,0).getInfo())
# if TrueColor.median().bandNames().length().eq(ee.Number(0)):
# return ('NotFound')
return TrueColor.median()
storage0 = ReflectanceData('2019-01-02','2019-01-03').bandNames().length()
#Constant
def ElevationData():
try:
dataset = ee.Image('CGIAR/SRTM90_V4')
# print('working')
except:
return ('NotFound')
elevation = dataset.select('elevation')
slope = ee.Terrain.slope(elevation)
# m.add_layer(slope, {'min': 0, 'max': 60}, 'slope')
# print("added layer")
return slope
def VegetationData(timeinit,timeend):
try:
dataset = ee.ImageCollection('NOAA/CDR/AVHRR/NDVI/V5') \
.filter(ee.Filter.date(timeinit, timeend))
# print('working')
except:
return ('NotFound')
ndvi = dataset.select('NDVI')
ndviVis = {
'min': -1000.0,
'max': 5000.0,
'palette': [
'ffffff', 'ce7e45', 'fcd163', 'c6ca02', '22cc04', '99b718', '207401',
'012e01'
],
}
# m.addLayer(ndvi.median(), ndviVis, 'NDVI')
if(ee.Algorithms.If(ndvi.median().bandNames().length().eq(storage0),1,0).getInfo()):
return ('NotFound')
return ndvi.median()
#Give till a specific year
def ImperviousSurfaceAreaData(year):
try:
dataset = ee.Image('Tsinghua/FROM-GLC/GAIA/v10')
# print('working')
except:
return ('NotFound')
visualization = {
'bands': ['change_year_index'],
'min': 2019 - year,
'max': 34,
'palette': [
'014352', '1a492c', '071ec4', 'b5ca36', '729eac', '8ea5de',
'818991', '62a3c3', 'ccf4fe', '74f0b9', '32bc55', 'c72144',
'56613b', 'c14683', 'c31c25', '5f6253', '11bf85', 'a61b26',
'99fbc5', '188aaa', 'c2d7f1', 'b7d9d8', '856f96', '109c6b',
'2de3f4', '9a777d', '151796', 'c033d8', '510037', '640c21',
'31a191', '223ab0', 'b692ac', '2de3f4',
]
}
# m.addLayer(dataset, visualization, 'Change year index')
if(ee.Algorithms.If(dataset.bandNames().length().eq(storage0),1,0).getInfo()):
return ('NotFound')
return dataset
#Constant
def BuiltUpArea():
try:
image = ee.Image("JRC/GHSL/P2023A/GHS_SMOD/2030")
# print('working')
except:
return ('NotFound')
smod = image.select('smod_code')
# m.addLayer(image, {}, 'Degree of Urbanization')
if(ee.Algorithms.If(image.bandNames().length().eq(storage0),1,0).getInfo()):
return ('NotFound')
return image
#Constant
def PopulationDensity():
try:
dataset = ee.ImageCollection('CIESIN/GPWv411/GPW_UNWPP-Adjusted_Population_Density').first()
# print('working')
except:
return ('NotFound')
raster = dataset.select('unwpp-adjusted_population_density')
raster_vis = {
'max': 1000.0,
'palette': [
'ffffe7',
'FFc869',
'ffac1d',
'e17735',
'f2552c',
'9f0c21'
],
'min': 0.0
}
# m.addLayer(raster, raster_vis, 'unwpp-adjusted_population_density')
if(ee.Algorithms.If(raster.bandNames().length().eq(storage0),1,0).getInfo()):
return ('NotFound')
return raster
def maskS2clouds(image):
qa = image.select('QA60')
# Bits 10 and 11 are clouds and cirrus, respectively.
cloudBitMask = 1 << 10
cirrusBitMask = 1 << 11
# Both flags should be set to zero, indicating clear conditions.
mask = qa.bitwiseAnd(cloudBitMask).eq(0) \
.And(qa.bitwiseAnd(cirrusBitMask).eq(0))
return image.updateMask(mask).divide(10000)
def SolarRadiation(timeinit, timeend):
# The code has been copied to the clipboard.
# Press Ctrl+V to in a code cell to paste it.
# Map the function over one month of data and take the median.
# Load Sentinel-2 TOA reflectance data.
try:
dataset = ee.ImageCollection('COPERNICUS/S2') \
.filterDate(timeinit, timeend) \
.filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE', 20)) \
.map(maskS2clouds)
# print('working')
except:
return ('NotFound')
rgbVis = {
'min': 0.0,
'max': 0.3,
'bands': ['B4', 'B3', 'B2'],
}
# m.addLayer(dataset.median(), rgbVis, 'RGB')
if(ee.Algorithms.If(dataset.median().bandNames().length().eq(storage0),1,0).getInfo()):
return ('NotFound')
return dataset.median()
def PhotosyntheticallyActiveRadiationDaily3HourData(timeinit,timeend):
try:
dataset = ee.ImageCollection('MODIS/061/MCD18C2') \
.filter(ee.Filter.date(timeinit, timeend))
# print('working')
except:
return ('NotFound')
gmt_1200_par = dataset.select('GMT_1200_PAR')
gmt_1200_par_vis = {
'min': -236,
'max': 316,
'palette': ['0f17ff', 'b11406', 'f1ff23'],
}
# m.addLayer(
# gmt_1200_par.median(), gmt_1200_par_vis,
# 'Total PAR at GMT 12:00')
if(ee.Algorithms.If(gmt_1200_par.median().bandNames().length().eq(storage0),1,0).getInfo()):
return ('NotFound')
return gmt_1200_par.median()
def ReflectanceData(timeinit, timeend):
try:
dataset = ee.ImageCollection('MODIS/061/MOD09A1') \
.filter(ee.Filter.date(timeinit, timeend))
# print('working')
except:
return ('NotFound')
TrueColor = dataset.select(['sur_refl_b01', 'sur_refl_b04', 'sur_refl_b03'])
TrueColorVis = {
'min': -100.0,
'max': 3000.0,
}
# m.addLayer(TrueColor.median(), TrueColorVis, 'True Color')
if(ee.Algorithms.If(TrueColor.median().bandNames().length().eq(storage0),1,0).getInfo()):
return ('NotFound')
return TrueColor.median()
def RainfallData(timeinit, timeend):
try:
dataset = ee.ImageCollection('UCSB-CHG/CHIRPS/DAILY').filter(
ee.Filter.date(timeinit, timeend))
# print('working')
except:
return ('NotFound')
precipitation = dataset.select('precipitation')
precipitation_vis = {
'min': 1,
'max': 17,
'palette': ['001137', '0aab1e', 'e7eb05', 'ff4a2d', 'e90000'],
}
# m.add_layer(precipitation, precipitation_vis, 'Precipitation')
if(ee.Algorithms.If(dataset.select('precipitation').max().bandNames().length().eq(storage0),1,0).getInfo()):
return ('NotFound')
return dataset.select('precipitation').max()
#around 5 days at once
# def CarbonMonooxideData(timeinit, timeend):
# try:
# collection = ee.ImageCollection('COPERNICUS/S5P/NRTI/L3_CO') \
# .select('CO_column_number_density') \
# .filterDate(timeinit, timeend)
# print('working')
# except:
# return ('NotFound')
# band_viz = {
# 'min': 0,
# 'max': 0.05,
# 'palette': ['black', 'blue', 'purple', 'cyan', 'green', 'yellow', 'red']
# }
# m.addLayer(collection.mean(), band_viz, 'S5P CO')
# if(ee.Algorithms.If(collection.mean().bandNames().length().eq(storage0),1,0).getInfo()):
# return ('NotFound')
# return collection.mean()
def OzoneData(timeinit, timeend):
try:
dataset = ee.ImageCollection('TOMS/MERGED') \
.filter(ee.Filter.date(timeinit, timeend))
# print('working')
except:
return ('NotFound')
columnOzone = dataset.select('ozone')
columnOzoneVis = {
'min': 100,
'max': 500,
'palette': ['1621a2', 'cyan', 'green', 'yellow', 'orange', 'red'],
}
m.setCenter(6.75, 46.53, 2)
# m.addLayer(columnOzone.median(), columnOzoneVis, 'Column Ozone')
if(ee.Algorithms.If(columnOzone.median().bandNames().length().eq(storage0),1,0).getInfo()):
return ('NotFound')
return columnOzone.median()
def temp2maboveData(timeinit, timeend):
try:
dataset = ee.ImageCollection('IDAHO_EPSCOR/TERRACLIMATE').filter(
ee.Filter.date(timeinit, timeend)
)
except:
return ('NotFound')
maximum_temperature = dataset.select('tmmx')
maximum_temperature_vis = {
'min': -300.0,
'max': 300.0,
'palette': [
'1a3678',
'2955bc',
'5699ff',
'8dbae9',
'acd1ff',
'caebff',
'e5f9ff',
'fdffb4',
'ffe6a2',
'ffc969',
'ffa12d',
'ff7c1f',
'ca531a',
'ff0000',
'ab0000',
],
}
m.set_center(71.72, 52.48, 3)
# m.add_layer(
# maximum_temperature.median(), maximum_temperature_vis, 'Maximum Temperature'
# )
if(ee.Algorithms.If(maximum_temperature.median().bandNames().length().eq(storage0),1,0).getInfo()):
return ('NotFound')
return maximum_temperature.median()
#around 1 year
def DownwardShortwaveRadiationData(timeinit, timeend):
dataset = ee.ImageCollection('MODIS/061/MCD18A1') \
.filter(ee.Filter.date(timeinit, timeend))
gmt_1200_dsr = dataset.select('GMT_1200_DSR')
gmt_1200_dsr_vis = {
'min': 0,
'max': 350,
'palette': ['0f17ff', 'b11406', 'f1ff23'],
}
# m.addLayer(
# gmt_1200_dsr.median(), gmt_1200_dsr_vis,
# 'Total dsr at GMT 12:00')
if(ee.Algorithms.If(gmt_1200_dsr.median().bandNames().length().eq(storage0),1,0).getInfo()):
return ('NotFound')
return gmt_1200_dsr.median()
In [ ]:
In [7]:
districtName = []
for i in CitiesData['states']:
for j in i['districts']:
districtName.append(j)
In [8]:
districtName = ['Port Blair','Chandigarh','Haveli','Daman','Delhi','Srinagar','Jammu','Kavaratti','Pondicherry','Leh','Amaravati',
'Itanagar'
,'Dispur',
'Patna',
'Raipur',
'Panaji',
'Gandhinagar',
'Chandigarh',
'Shimla',
'Ranchi',
'Bengaluru',
'Thiruvananthapuram',
'Bhopal',
'Mumbai',
'Imphal',
'Shillong',
'Aizawl',
'Kohima',
'Bhubaneswar',
'Chandigarh',
'Jaipur',
'Gangtok',
'Chennai',
'Hyderabad',
'Agartala',
'Lucknow',
'Dehradun',
'Gairsain',
'Kolkata']
In [9]:
len(districtName)
Out[9]:
39
In [ ]:
In [10]:
import pandas as pd
#getting data
from datetime import datetime
from datetime import timedelta
In [11]:
# cities_shp = "/content/DISTRICT_BOUNDARY.shp"
# cities = geemap.shp_to_ee(cities_shp)
# m.addLayer(cities, {}, "India_Cities")
In [12]:
# from google.colab import drive
# drive.mount('/content/drive')
In [ ]:
In [13]:
# city = (
# ee.FeatureCollection('FAO/GAUL_SIMPLIFIED_500m/2015/level2')
# .filter("ADM2_NAME == '{}'".format("Agra"))
# .filter(ee.Filter.eq('ADM2_NAME', '{}'.format('Agra'))) # Exactly the same as above.
# )
# city
import os
In [14]:
# city = (
# ee.FeatureCollection('FAO/GAUL_SIMPLIFIED_500m/2015/level2')
# .filter("ADM2_NAME == '{}'".format('Delhi'))
# ) # Exactly the same as above.
# m.center_object(city, 9)
# m.get_center()
In [15]:
final_output_try1 = 'final_output_1st_try.csv'
timeinit = '2016-06-01'
year = 2016
timeinit = datetime.strptime(timeinit, "%Y-%m-%d")
timeend = timeinit+timedelta(days=30)
names = ['ElevationData', 'VegetationData','ImperviousSurfaceAreaData','BuiltUpArea','PopulationDensity','SolarRadiation','PhotosyntheticallyActiveRadiationDaily3HourData','ReflectanceData','RainfallData','OzoneData','temp2maboveData','DownwardShortwaveRadiationData']
finalDF = pd.DataFrame()
# districtName = ['Mahabalipuram','Chennai']
firstHit = False
m = geemap.Map()
for i in districtName:
print(i)
if i == "South 24 Paragnas":
firstHit = True
if i not in os.listdir("CITIES") and firstHit == True:
timeinit = '2016-06-01'
year = 2016
timeinit = datetime.strptime(timeinit, "%Y-%m-%d")
try:
city = (
ee.FeatureCollection('FAO/GAUL_SIMPLIFIED_500m/2015/level2')
.filter("ADM2_NAME == '{}'".format(i))
.filter(ee.Filter.eq('ADM2_NAME', '{}'.format(i))) # Exactly the same as above.
)
m.center_object(city, 9)
print(i, 'this is i')
directory = 'CITIES/{}/'.format(i)
# try:
timeend = timeinit+timedelta(days=30)
images = []
print('this is time----------------------------------------------------------------', timeinit)
if (ElevationData()!= 'NotFound'):
images.append(ElevationData().clipToCollection(city))
print('elevation appended')
else:
print('skipped this time elevation',timeinit)
images.append('Not Found')
if (VegetationData(str(timeinit)[0:10],str(timeend)[0:10]))!= 'NotFound':
images.append(VegetationData(str(timeinit)[0:10],str(timeend)[0:10]).clipToCollection(city))
print('Vegetation appended')
else:
print('skipped this time vegetation',timeinit)
images.append('Not Found')
if (ImperviousSurfaceAreaData(year))!= 'NotFound':
images.append(ImperviousSurfaceAreaData(year).clipToCollection(city))
print('ISAD appended')
else:
print('skipped this time ISA',timeinit)
images.append('Not Found')
if (BuiltUpArea())!= 'NotFound':
images.append(BuiltUpArea().clipToCollection(city))
print('Built Up appended')
else:
print('skipped this time built',timeinit)
images.append('Not Found')
if (PopulationDensity())!= 'NotFound':
images.append(PopulationDensity().clipToCollection(city))
print('population appended')
else:
print('skipped this time Population',timeinit)
images.append('Not Found')
if (SolarRadiation(str(timeinit)[0:10],str(timeend)[0:10]))!= 'NotFound':
images.append(SolarRadiation(str(timeinit)[0:10],str(timeend)[0:10]).clipToCollection(city))
print('Solar appended')
else:
print('skipped this time Solar',timeinit)
images.append('Not Found')
if (PhotosyntheticallyActiveRadiationDaily3HourData(str(timeinit)[0:10],str(timeend)[0:10]))!= 'NotFound':
images.append(PhotosyntheticallyActiveRadiationDaily3HourData(str(timeinit)[0:10],str(timeend)[0:10]).clipToCollection(city))
print('photo appended')
else:
print('skipped this time photosynthesis',timeinit)
images.append('Not Found')
if (ReflectanceData(str(timeinit)[0:10],str(timeend)[0:10]))!= 'NotFound':
images.append(ReflectanceData(str(timeinit)[0:10],str(timeend)[0:10]).clipToCollection(city))
print('reflectance appended')
else:
print('skipped this time reflectance',timeinit)
images.append('NotFound')
if (RainfallData(str(timeinit)[0:10],str(timeend)[0:10]))!= 'NotFound':
images.append(RainfallData(str(timeinit)[0:10],str(timeend)[0:10]).clipToCollection(city))
print('rainfall appended')
else:
print('skipped this time rainfall',timeinit)
images.append('NotFound')
# if (CarbonMonooxideData(str(timeinit)[0:10],str(timeend)[0:10]))!= 'NotFound':
# images.append(CarbonMonooxideData(str(timeinit)[0:10],str(timeend)[0:10]).clip(city))
# print('carbon appended')
# else:
# print('skipped this time Carbon',timeinit)
# images.append('Not Found')
if (OzoneData(str(timeinit)[0:10],str(timeend)[0:10]))!= 'NotFound':
images.append(OzoneData(str(timeinit)[0:10],str(timeend)[0:10]).clipToCollection(city))
print('Ozone appended')
else:
print('skipped this time Ozone',timeinit)
images.append('NotFound')
if (temp2maboveData(str(timeinit)[0:10],str(timeend)[0:10]))!= 'NotFound':
images.append(temp2maboveData(str(timeinit)[0:10],str(timeend)[0:10]).clipToCollection(city))
print('temp appended')
else:
print('skipped this time temperature',timeinit)
images.append('NotFound')
if (DownwardShortwaveRadiationData(str(timeinit)[0:10],str(timeend)[0:10]))!= 'NotFound':
images.append(DownwardShortwaveRadiationData(str(timeinit)[0:10],str(timeend)[0:10]).clipToCollection(city))
print('Downward appended')
else:
print('skipped this time DSRD',timeinit)
images.append('NotFound')
print('appending over')
timeinit = timeinit + timedelta(days=30)
print('time addition')
df = pd.DataFrame()
for k in range(len(images)):
if images[k] != 'NotFound':
geemap.zonal_stats(
images[k], city, final_output_try1, statistics_type = 'MEAN', scale = 1000, return_fc = False
)
print('added to ith index')
print(k)
dfreq = geemap.csv_to_df(final_output_try1)
dfreq = dfreq.rename(columns = {'mean':names[k]})
print(dfreq, 'this is dfreq')
else:
dfreq = pd.DataFrame({names[k] : ['Not Found']})
print(dfreq)
df = pd.concat([df, dfreq],axis = 1)
# df = pd.concat([df, dfreq],axis = 1)
for l in ['system:index','ADM1_CODE','ADM2_NAME','EXP2_YEAR','ADM1_NAME','DISP_AREA','Shape_Leng','STATUS','STR2_YEAR','ADM0_NAME','ADM0_CODE','Shape_Area','ADM2_CODE']:
df = df.drop(l,axis = 1)
m.center_object(city, 9)
dflong = pd.DataFrame({"longitude" : [m.get_center()[0]]})
df = pd.concat([df,dflong],axis =1)
dflatt = m.get_center()[1]
dflatt = pd.DataFrame({"lattitude" : [m.get_center()[1]]})
df = pd.concat([df, dflatt], axis = 1)
if not os.path.exists(directory):
os.makedirs(directory)
file_name_date = directory+'/{}'.format(i+str(timeinit)[0:10] + '.csv')
df.to_csv(file_name_date)
# drive.mount('/content/drive')
print(df)
finalDF = pd.concat([finalDF, df])
print(finalDF)
except:
continue
# finalCSV = finalDF.to_csv("FinalDataIITm2016")
Anantapur Chittoor East Godavari Guntur Krishna Kurnool Nellore Prakasam Srikakulam Visakhapatnam Vizianagaram West Godavari YSR Kadapa Tawang West Kameng East Kameng Papum Pare Kurung Kumey Kra Daadi Lower Subansiri Upper Subansiri West Siang East Siang Siang Upper Siang Lower Siang Lower Dibang Valley Dibang Valley Anjaw Lohit Namsai Changlang Tirap Longding Baksa Barpeta Biswanath Bongaigaon Cachar Charaideo Chirang Darrang Dhemaji Dhubri Dibrugarh Goalpara Golaghat Hailakandi Hojai Jorhat Kamrup Metropolitan Kamrup Karbi Anglong Karimganj Kokrajhar Lakhimpur Majuli Morigaon Nagaon Nalbari Dima Hasao Sivasagar Sonitpur South Salmara-Mankachar Tinsukia Udalguri West Karbi Anglong Araria Arwal Aurangabad Banka Begusarai Bhagalpur Bhojpur Buxar Darbhanga East Champaran (Motihari) Gaya Gopalganj Jamui Jehanabad Kaimur (Bhabua) Katihar Khagaria Kishanganj Lakhisarai Madhepura Madhubani Munger (Monghyr) Muzaffarpur Nalanda Nawada Patna Purnia (Purnea) Rohtas Saharsa Samastipur Saran Sheikhpura Sheohar Sitamarhi Siwan Supaul Vaishali West Champaran Chandigarh Balod Baloda Bazar Balrampur Bastar Bemetara Bijapur Bilaspur Dantewada (South Bastar) Dhamtari Durg Gariyaband Janjgir-Champa Jashpur Kabirdham (Kawardha) Kanker (North Bastar) Kondagaon Korba Korea (Koriya) Mahasamund Mungeli Narayanpur Raigarh Raipur Rajnandgaon Sukma Surajpur Surguja Dadra & Nagar Haveli Daman Diu Central Delhi East Delhi New Delhi North Delhi North East Delhi North West Delhi Shahdara South Delhi South East Delhi South West Delhi West Delhi North Goa South Goa Ahmedabad Amreli Anand Aravalli Banaskantha (Palanpur) Bharuch Bhavnagar Botad Chhota Udepur Dahod Dangs (Ahwa) Devbhoomi Dwarka Gandhinagar Gir Somnath Jamnagar Junagadh Kachchh Kheda (Nadiad) Mahisagar Mehsana Morbi Narmada (Rajpipla) Navsari Panchmahal (Godhra) Patan Porbandar Rajkot Sabarkantha (Himmatnagar) Surat Surendranagar Tapi (Vyara) Vadodara Valsad Ambala Bhiwani Charkhi Dadri Faridabad Fatehabad Gurgaon Hisar Jhajjar Jind Kaithal Karnal Kurukshetra Mahendragarh Mewat Palwal Panchkula Panipat Rewari Rohtak Sirsa Sonipat Yamunanagar Bilaspur Chamba Hamirpur Kangra Kinnaur Kullu Lahaul & Spiti Mandi Shimla Sirmaur (Sirmour) Solan Una Anantnag Bandipore Baramulla Budgam Doda Ganderbal Jammu Kargil Kathua Kishtwar Kulgam Kupwara Leh Poonch Pulwama Rajouri Ramban Reasi Samba Shopian Srinagar Udhampur Bokaro Chatra Deoghar Dhanbad Dumka East Singhbhum Garhwa Giridih Godda Gumla Hazaribag Jamtara Khunti Koderma Latehar Lohardaga Pakur Palamu Ramgarh Ranchi Sahibganj Seraikela-Kharsawan Simdega West Singhbhum Bagalkot Ballari (Bellary) Belagavi (Belgaum) Bengaluru (Bangalore) Rural Bengaluru (Bangalore) Urban Bidar Chamarajanagar Chikballapur Chikkamagaluru (Chikmagalur) Chitradurga Dakshina Kannada Davangere Dharwad Gadag Hassan Haveri Kalaburagi (Gulbarga) Kodagu Kolar Koppal Mandya Mysuru (Mysore) Raichur Ramanagara Shivamogga (Shimoga) Tumakuru (Tumkur) Udupi Uttara Kannada (Karwar) Vijayapura (Bijapur) Yadgir Alappuzha Ernakulam Idukki Kannur Kasaragod Kollam Kottayam Kozhikode Malappuram Palakkad Pathanamthitta Thiruvananthapuram Thrissur Wayanad Agatti Amini Androth Bithra Chethlath Kavaratti Kadmath Kalpeni Kilthan Minicoy Agar Malwa Alirajpur Anuppur Ashoknagar Balaghat Barwani Betul Bhind Bhopal Burhanpur Chhatarpur Chhindwara Damoh Datia Dewas Dhar Dindori Guna Gwalior Harda Hoshangabad Indore Jabalpur Jhabua Katni Khandwa Khargone Mandla Mandsaur Morena Narsinghpur Neemuch Panna Raisen Rajgarh Ratlam Rewa Sagar Satna Sehore Seoni Shahdol Shajapur Sheopur Shivpuri Sidhi Singrauli Tikamgarh Ujjain Umaria Vidisha Ahmednagar Akola Amravati Aurangabad Beed Bhandara Buldhana Chandrapur Dhule Gadchiroli Gondia Hingoli Jalgaon Jalna Kolhapur Latur Mumbai City Mumbai Suburban Nagpur Nanded Nandurbar Nashik Osmanabad Palghar Parbhani Pune Raigad Ratnagiri Sangli Satara Sindhudurg Solapur Thane Wardha Washim Yavatmal Bishnupur Chandel Churachandpur Imphal East Imphal West Jiribam Kakching Kamjong Kangpokpi Noney Pherzawl Senapati Tamenglong Tengnoupal Thoubal Ukhrul East Garo Hills East Jaintia Hills East Khasi Hills North Garo Hills Ri Bhoi South Garo Hills South West Garo Hills South West Khasi Hills West Garo Hills West Jaintia Hills West Khasi Hills Aizawl Champhai Kolasib Lawngtlai Lunglei Mamit Saiha Serchhip Dimapur Kiphire Kohima Longleng Mokokchung Mon Peren Phek Tuensang Wokha Zunheboto Angul Balangir Balasore Bargarh Bhadrak Boudh Cuttack Deogarh Dhenkanal Gajapati Ganjam Jagatsinghapur Jajpur Jharsuguda Kalahandi Kandhamal Kendrapara Kendujhar (Keonjhar) Khordha Koraput Malkangiri Mayurbhanj Nabarangpur Nayagarh Nuapada Puri Rayagada Sambalpur Sonepur Sundargarh Karaikal Mahe Pondicherry Yanam Amritsar Barnala Bathinda Faridkot Fatehgarh Sahib Fazilka Ferozepur Gurdaspur Hoshiarpur Jalandhar Kapurthala Ludhiana Mansa Moga Muktsar Nawanshahr (Shahid Bhagat Singh Nagar) Pathankot Patiala Rupnagar Sahibzada Ajit Singh Nagar (Mohali) Sangrur Tarn Taran Ajmer Alwar Banswara Baran Barmer Bharatpur Bhilwara Bikaner Bundi Chittorgarh Churu Dausa Dholpur Dungarpur Hanumangarh Jaipur Jaisalmer Jalore Jhalawar Jhunjhunu Jodhpur Karauli Kota Nagaur Pali Pratapgarh Rajsamand Sawai Madhopur Sikar Sirohi Sri Ganganagar Tonk Udaipur East Sikkim North Sikkim South Sikkim West Sikkim Ariyalur Chennai Coimbatore Cuddalore Dharmapuri Dindigul Erode Kanchipuram Kanyakumari Karur Krishnagiri Madurai Nagapattinam Namakkal Nilgiris Perambalur Pudukkottai Ramanathapuram Salem Sivaganga Thanjavur Theni Thoothukudi (Tuticorin) Tiruchirappalli Tirunelveli Tiruppur Tiruvallur Tiruvannamalai Tiruvarur Vellore Viluppuram Virudhunagar Adilabad Bhadradri Kothagudem Hyderabad Jagtial Jangaon Jayashankar Bhoopalpally Jogulamba Gadwal Kamareddy Karimnagar Khammam Komaram Bheem Asifabad Mahabubabad Mahabubnagar Mancherial Medak Medchal Nagarkurnool Nalgonda Nirmal Nizamabad Peddapalli Rajanna Sircilla Rangareddy Sangareddy Siddipet Suryapet Vikarabad Wanaparthy Warangal (Rural) Warangal (Urban) Yadadri Bhuvanagiri Dhalai Gomati Khowai North Tripura Sepahijala South Tripura Unakoti West Tripura Almora Bageshwar Chamoli Champawat Dehradun Haridwar Nainital Pauri Garhwal Pithoragarh Rudraprayag Tehri Garhwal Udham Singh Nagar Uttarkashi Agra Aligarh Allahabad Ambedkar Nagar Amethi (Chatrapati Sahuji Mahraj Nagar) Amroha (J.P. Nagar) Auraiya Azamgarh Baghpat Bahraich Ballia Balrampur Banda Barabanki Bareilly Basti Bhadohi Bijnor Budaun Bulandshahr Chandauli Chitrakoot Deoria Etah Etawah Faizabad Farrukhabad Fatehpur Firozabad Gautam Buddha Nagar Ghaziabad Ghazipur Gonda Gorakhpur Hamirpur Hapur (Panchsheel Nagar) Hardoi Hathras Jalaun Jaunpur Jhansi Kannauj Kanpur Dehat Kanpur Nagar Kanshiram Nagar (Kasganj) Kaushambi Kushinagar (Padrauna) Lakhimpur - Kheri Lalitpur Lucknow Maharajganj Mahoba Mainpuri Mathura Mau Meerut Mirzapur Moradabad Muzaffarnagar Pilibhit Pratapgarh RaeBareli Rampur Saharanpur Sambhal (Bhim Nagar) Sant Kabir Nagar Shahjahanpur Shamali (Prabuddh Nagar) Shravasti Siddharth Nagar Sitapur Sonbhadra Sultanpur Unnao Varanasi Alipurduar Bankura Birbhum Burdwan (Bardhaman) Cooch Behar Dakshin Dinajpur (South Dinajpur) Darjeeling Hooghly Howrah Jalpaiguri Kalimpong Kolkata Malda Murshidabad Nadia North 24 Parganas Paschim Medinipur (West Medinipur) Purba Medinipur (East Medinipur) Purulia South 24 Parganas Uttar Dinajpur (North Dinajpur)
In [ ]:
# from google.colab import drive
# drive.mount('/content/drive',force_remount=True)
In [ ]:
finalDF
In [18]:
import os
import pandas as pd
lst_of_data = []
citiesLst = []
FinalDatacity = pd.DataFrame()
for i in os.listdir('CITIES'):
citiesLst.append(i)
for j in citiesLst:
lst_of_data = []
for i in os.listdir('CITIES/{}'.format(j)):
if(i[-4:] == '.csv'):
lst_of_data.append(i)
for i in lst_of_data:
newDf = pd.read_csv('CITIES/{}/'.format(j)+i)
dfCity = pd.DataFrame([{'City': j}])
newDf = pd.concat([newDf, dfCity],axis = 1)
FinalDatacity = pd.concat([FinalDatacity, newDf])
# FinalDataDelhi = FinalDataDelhi.reset_index()
In [1]:
import pandas as pd
FinalDatacity = pd.read_csv("FinalDataIITm2016.csv")
# for i in FinalDatacity.columns:
# for j in range(len(FinalDatacity)):
# if (type(FinalDatacity[i][j]) == str) and i!='Date' and i!='City':
# FinalDatacity[i][j] = float('nan')
In [2]:
FinalDatacity
Out[2]:
| Unnamed: 0 | ElevationData | VegetationData | ImperviousSurfaceAreaData | BuiltUpArea | PopulationDensity | B1 | B2 | B3 | B4 | ... | sur_refl_b01 | sur_refl_b04 | sur_refl_b03 | RainfallData | OzoneData | temp2maboveData | DownwardShortwaveRadiationData | longitude | lattitude | City | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 0 | 1.222961 | 807.519298 | 22.352473 | 11.888955 | 156.082205 | 0.160438 | 0.141787 | 0.135168 | 0.144606 | ... | 1396.808728 | 1237.866845 | 907.391185 | 27.839911 | 270.082918 | 31.999294 | 133.457940 | 19.255095 | 78.967038 | Adilabad |
| 1 | 1 | 0.210359 | 1367.832547 | 24.872523 | 17.405272 | 951.545917 | 0.184710 | 0.176045 | 0.187391 | 0.214033 | ... | 1974.600100 | 1626.869580 | 1000.752538 | 9.668605 | 278.914648 | 38.460013 | 196.441418 | 27.007940 | 78.063247 | Agra |
| 2 | 2 | 1.091017 | 558.408990 | 24.436156 | 14.315469 | 250.275335 | 0.168016 | 0.148329 | 0.138445 | 0.150948 | ... | 1511.500316 | 1278.913284 | 980.716096 | 14.748499 | 269.356828 | 27.627641 | 151.121978 | 19.232767 | 74.646010 | Ahmednagar |
| 3 | 3 | 9.903161 | 1958.376805 | 22.178718 | 11.493150 | 89.064235 | NaN | NaN | NaN | NaN | ... | 1150.609200 | 1368.257914 | 1129.101940 | 50.049622 | 266.920637 | 23.359770 | 35.891388 | 23.835798 | 92.887728 | Aizawl |
| 4 | 4 | 0.620940 | 1169.945993 | 21.381604 | 13.307855 | 254.676462 | 0.174647 | 0.166047 | 0.175552 | 0.213032 | ... | 1950.197696 | 1483.921295 | 882.385353 | 13.312161 | 276.093113 | 35.871162 | 254.595516 | 26.227847 | 74.764333 | Ajmer |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
| 477 | 477 | 0.676866 | 1847.826439 | 19.261525 | 17.163002 | 555.499176 | 0.188754 | 0.169780 | 0.161496 | 0.137527 | ... | 1315.691632 | 1502.433258 | 1243.444923 | 44.505138 | 267.846375 | 27.732481 | 39.394472 | 23.797173 | 91.459953 | West Tripura |
| 478 | 478 | 6.996298 | 1681.648268 | 27.816976 | 11.469112 | 119.615461 | NaN | NaN | NaN | NaN | ... | 944.069041 | 1153.462023 | 943.650552 | 47.514291 | 267.456933 | 24.415635 | 35.095686 | 26.189563 | 94.192497 | Wokha |
| 479 | 479 | 0.131746 | 300.319689 | 17.608537 | 18.188908 | 379.181658 | NaN | NaN | NaN | NaN | ... | 1080.360332 | 1175.061219 | 945.197761 | 27.876189 | 267.000000 | 30.781580 | 74.375837 | 16.717497 | 82.250056 | Yanam |
| 480 | 480 | 0.813338 | 643.019435 | 23.874025 | 11.877073 | 188.873119 | 0.152141 | 0.132932 | 0.125543 | 0.136288 | ... | 1373.537117 | 1214.776684 | 941.501966 | 28.402250 | 270.771173 | 33.404263 | 143.284072 | 20.084129 | 78.157831 | Yavatmal |
| 481 | 481 | 10.811397 | 928.612788 | 26.842105 | 11.398451 | 110.835207 | NaN | NaN | NaN | NaN | ... | 1709.828502 | 1864.584917 | 1749.913868 | 37.675378 | 266.294931 | 20.672686 | 25.225232 | 26.008403 | 94.486338 | Zunheboto |
482 rows × 33 columns
In [3]:
# FinalDatacity = FinalDatacity.reset_index()
# FinalDatacity.drop(["Unnamed: 0","index"],axis = 1, inplace = True)
# FinalDatacity[FinalDatacity['PopulationDensity'] <200]
# count = 0
# distFromRural = []
# arr = []
# import math
# for i,j in (zip(FinalDatacity['longitude'],FinalDatacity['lattitude'])):
# arr.append([count,i,j])
# count+=1
# for i in range(len(arr)):
# if FinalDatacity['PopulationDensity'][i] < 200:
# distFromRural.append([0,i])
# continue
# min_dist = 10000000000
# minJ = i
# for j in range(i+1,len(arr)):
# if (math.sqrt((arr[i][1] - arr[j][1])**2+(arr[i][2] - arr[j][2])**2) < min_dist) and (FinalDatacity['PopulationDensity'][j] < 200):
# min_dist = math.sqrt((arr[i][1] - arr[j][1])**2+(arr[i][2] - arr[j][2])**2)
# minJ = j
# distFromRural.append([min_dist,minJ])
# distFromRural
Out[3]:
[[0, 0], [1.638308791028131, 405], [2.769502673152689, 63], [0, 3], [0.7455686978911836, 57], [1.2971414040981657, 480], [2.9713464157292524, 240], [2.0860136308804305, 346], [1.0948987194373077, 410], [0.46701658282711317, 28], [1.7197924438813943, 449], [1.065320635928347, 406], [2.2623667781912427, 410], [0.7516367939765816, 50], [0, 14], [1.8546858688475398, 76], [1.2996256283301946, 435], [0, 17], [0, 18], [0.5394017868079837, 400], [1.4143870131538603, 476], [3.623720446521663, 240], [0, 22], [1.8593667111451533, 87], [0.7644490830955473, 50], [10000000000, 25], [2.04087997484741, 410], [0.6597568304926453, 63], [0, 28], [1.6786689356951436, 346], [2.062610909746554, 78], [0, 31], [2.1866806345978627, 263], [2.935771600506263, 78], [0, 34], [0, 35], [10000000000, 36], [0, 37], [2.653194303587799, 263], [2.6020069909540497, 162], [1.3300096192012183, 324], [0, 41], [1.0688522661836843, 78], [0, 43], [0.8076300285938196, 126], [2.1417725327606707, 172], [0, 46], [2.6103655265430628, 410], [1.0382859128317352, 171], [2.451838244615646, 263], [0, 50], [1.8821145009543456, 105], [2.3497012466809766, 476], [1.1291585532280326, 83], [1.5162559865037486, 405], [1.708791979784351, 435], [1.162842139374769, 435], [0, 57], [1.395404737581053, 407], [1.4544858484308707, 171], [1.756109056241903, 263], [0.5548689529272082, 396], [1.7191382452240682, 63], [0, 63], [0.6266755011119214, 346], [0, 65], [2.967375610457848, 472], [0.418578878184459, 81], [1.5520669375305463, 263], [0.7576625947569123, 126], [0, 70], [1.7087361780710166, 346], [0, 72], [1.142697121455943, 172], [1.8085152253723193, 263], [0.626953038396741, 245], [0, 76], [0, 77], [0, 78], [0, 79], [1.4371171749710137, 410], [0, 81], [0.9696228431610194, 406], [0, 83], [0, 84], [0.6367128013699814, 263], [2.66449125660691, 352], [0, 87], [0, 88], [0, 89], [1.1909507022547248, 340], [2.212930358451712, 352], [0, 92], [0, 93], [1.953626896026802, 240], [3.7316280517506497, 240], [1.3601613035417366, 105], [2.0367296672326014, 324], [6.533833014122211, 188], [0, 99], [0, 100], [2.4835233609025607, 476], [1.2375027865106853, 224], [0.9320222575224139, 407], [1.1131699557082602, 449], [0, 105], [2.3789037246827407, 263], [2.7720062537834513, 410], [0.7144993131898566, 396], [0, 109], [0, 110], [2.0380690067272433, 263], [1.0073811486973172, 435], [0, 113], [2.2986481577839917, 240], [1.5971923893637971, 413], [0.14709520812905252, 475], [1.3948678389657423, 388], [2.7540920760608536, 172], [0.4891080553864748, 475], [0.16759971389924533, 242], [2.790070189640854, 240], [0, 122], [2.8886905439124475, 263], [1.487495134365846, 414], [1.257237162315511, 277], [0, 126], [1.0583568818562556, 283], [0.5605906851686489, 474], [0, 129], [2.360561450609584, 240], [1.9275193475689878, 240], [2.2639211944277093, 346], [1.910039947576597, 407], [2.4160193917108965, 410], [2.2504453559884556, 346], [1.3815702440240956, 171], [2.5583883763607447, 346], [1.0283773627113137, 171], [1.3885731448326515, 406], [1.5777265711036672, 340], [1.9502448698522208, 407], [1.3889530429198287, 358], [0, 143], [1.220116539499575, 435], [0.7966468493352353, 216], [0.8396264280705681, 263], [1.9352290426056828, 346], [0, 148], [10000000000, 149], [10000000000, 150], [1.600591499792097, 406], [0, 152], [1.9830606496845962, 410], [1.7659852361564643, 263], [0.6619339342045389, 472], [2.635832029445264, 476], [0.45781382516054014, 478], [2.870892012720597, 410], [2.655433647529163, 263], [10000000000, 160], [2.693547524698266, 410], [0, 162], [0, 163], [0.8887079744950889, 352], [2.017237620083728, 257], [2.409504120433011, 449], [0.7546527260640506, 407], [0.32683618832225, 245], [2.130897769453161, 407], [10000000000, 170], [0, 171], [0, 172], [2.7677667813169795, 350], [0.768285642274246, 346], [0.7371618919311244, 240], [2.1456892119582944, 405], [1.9976893945157848, 358], [1.0474022283546152, 263], [1.1419158670429241, 480], [2.68501883043071, 406], [0, 181], [1.5649720844054464, 257], [2.041573083023767, 358], [2.7302473477194797, 240], [1.3724301619558297, 396], [0.7150927340188995, 286], [0.8349731842585738, 449], [0, 188], [1.9657263004577652, 388], [1.9584491866648492, 257], [1.734168039129961, 407], [2.6278227540027452, 396], [2.1911489751713504, 480], [0.938723617181257, 428], [0, 195], [2.4894586982268496, 263], [2.138636062150348, 263], [0.732174367128458, 277], [0, 199], [1.5854982470601686, 410], [1.5089423224680685, 263], [2.094394254572211, 324], [2.507521259768785, 346], [0, 204], [1.1490673972372278, 407], [0.4831581702781675, 388], [2.201023323344866, 406], [0, 208], [0.40928399689758066, 298], [1.874171021989116, 435], [10000000000, 211], [0, 212], [1.8392372676702977, 406], [0, 214], [0.6690785078470955, 474], [0, 216], [1.1019621812172753, 257], [2.4955517038491117, 407], [0.42077375430095826, 240], [2.0167554548282274, 340], [2.0701837430704253, 257], [4.23762931131972, 240], [0.7666073244246294, 405], [0, 224], [0.5113147197898298, 245], [1.73207999714611, 236], [1.6753519978881617, 406], [2.7549882248657203, 240], [0.6615013207279804, 240], [1.880142800142617, 476], [0.5871018554397011, 456], [1.445966864328571, 410], [3.4144304742453424, 240], [2.497657326892183, 388], [2.4198340242238827, 476], [0, 236], [1.837496703977336, 388], [0, 238], [1.080601007939523, 476], [0, 240], [1.49865558441408, 263], [0, 242], [1.0099277035891403, 472], [2.7070855319210634, 352], [0, 245], [0.5396870358738387, 413], [3.515874997446017, 472], [7.131421380000022, 358], [0.8524927132701604, 358], [0, 250], [0.1751282148707824, 456], [0, 252], [1.0817235538362417, 405], [6.462381532286107, 358], [4.725371054956049, 358], [1.5925860536503509, 352], [0, 257], [1.2423007143444675, 358], [1.3951848734907444, 406], [0.2029022927859954, 341], [2.223886726434563, 263], [1.0323461528513938, 407], [0, 263], [2.209507731793144, 480], [0, 265], [0.9025361854597229, 412], [0, 267], [0, 268], [0, 269], [2.524667916555894, 340], [1.835294905994421, 406], [0, 272], [1.9912826632557623, 476], [2.1755375528506784, 476], [5.900610558078375, 352], [3.2623598256711475, 410], [0, 277], [4.322571550923592, 358], [2.0817895993191593, 449], [1.0507678145442392, 340], [2.2001618167630443, 407], [5.011384654631627, 358], [0, 283], [0, 284], [0.7757628872181387, 406], [0, 286], [0.47246514536846734, 324], [3.4834399392990165, 358], [0, 289], [10000000000, 290], [1.943074830403567, 405], [2.2651715055181874, 410], [1.9704396365234087, 412], [2.1996095056581457, 480], [1.2966361997352713, 346], [0.8965080852178824, 410], [2.4975292746527744, 406], [0, 298], [0, 299], [1.139640721487113, 346], [1.0531105838331467, 407], [3.217329971320613, 406], [3.133765087400383, 413], [2.3805724034630438, 472], [1.2604765709113315, 346], [3.0913514341333412, 476], [0, 307], [2.6524725105036513, 472], [1.3513716254771417, 478], [4.847609591392939, 352], [0, 311], [1.288707546030232, 398], [2.7889619991981425, 412], [1.0289311768166243, 474], [1.468247478551414, 352], [4.523947449142311, 352], [1.1088824149171705, 480], [2.9446762094773193, 435], [0, 319], [3.5777450883181636, 435], [2.525015364940359, 435], [2.458033942147943, 412], [1.4342118673454711, 388], [0, 324], [1.2246599793331074, 352], [4.644347755849582, 358], [1.5603527128297687, 480], [3.361232517574771, 426], [0.6287973862557943, 413], [0, 330], [1.1637153744626836, 399], [0, 332], [2.2678820895139795, 358], [2.684463930084015, 472], [5.309638107715234, 358], [1.2678482223067384, 436], [0, 337], [0.8219654502016023, 406], [1.9247950353797922, 346], [0, 340], [0, 341], [1.6784050624071611, 480], [1.0055871179970883, 435], [1.5114614335083147, 406], [2.902299734021468, 436], [0, 346], [4.396379429667846, 352], [0, 348], [1.5970464069863541, 350], [0, 350], [2.099500791004882, 435], [0, 352], [1.6880751573662207, 410], [6.074224151987875, 358], [2.4610536562250243, 413], [0, 356], [10000000000, 357], [0, 358], [0.3303652769190925, 480], [0, 360], [2.1410824842094622, 388], [0, 362], [0, 363], [0.9334776894486472, 435], [1.1811194639171148, 414], [8.313103134739967, 413], [1.7231729037892063, 438], [0.9976281783596477, 412], [2.09845770733719, 396], [1.173963662672778, 413], [0, 371], [1.1196891434988485, 436], [10000000000, 373], [2.2437119963214265, 449], [2.5407404068408965, 406], [1.8130182218593274, 436], [1.1047096363703743, 406], [0.9459235951358776, 466], [1.1440869350071938, 438], [2.2077503436129864, 476], [2.38678550076393, 428], [0, 382], [2.880117898280653, 435], [10000000000, 384], [0, 385], [10000000000, 386], [2.7662674649042054, 476], [0, 388], [1.4217549595159313, 413], [2.086114592181432, 406], [2.677254470600251, 410], [3.0126694614588327, 436], [1.5967175790148904, 413], [0.9333228965409233, 456], [0.7089563844474572, 405], [0, 396], [0, 397], [0, 398], [0, 399], [0, 400], [2.7667090363425664, 438], [1.4977666058282302, 466], [2.8455250966221803, 412], [2.978437265598198, 476], [0, 405], [0, 406], [0, 407], [3.4743101187401044, 410], [3.096360127754343, 410], [0, 410], [1.5393378266980668, 449], [0, 412], [0, 413], [0, 414], [3.55197552898865, 449], [2.7218639717411044, 476], [3.7027506116654485, 438], [10.185659067653813, 480], [3.03964962793571, 436], [1.5823446942989345, 460], [3.523075176324985, 480], [1.0592316038566554, 436], [2.504927433876996, 436], [1.3848743042872702, 478], [3.8523429068471606, 426], [0, 426], [6.340692891755089, 480], [0, 428], [2.1867305109408113, 474], [4.847626654535793, 436], [2.8892637168176503, 456], [1.8191811794284012, 436], [1.765892503711681, 476], [2.3538324143731786, 435], [0, 435], [0, 436], [0, 437], [0, 438], [5.018267941347682, 480], [9.489248819647722, 480], [10.229833051316524, 480], [11.535565282701473, 480], [0.6701856534028731, 455], [9.793951057985732, 480], [1.5753122184483277, 466], [0.6555113730956799, 447], [0, 447], [7.729948234790333, 480], [0, 449], [0, 450], [4.082363756973568, 466], [2.149485925663521, 460], [7.3859372044915705, 480], [2.2138130941072967, 466], [0, 455], [0, 456], [0, 457], [10000000000, 458], [3.8604301711448494, 466], [0, 460], [4.582445021528957, 466], [3.227247201911366, 476], [5.046769351818752, 480], [5.314797450929531, 466], [7.331600213980269, 480], [0, 466], [10.606737910353894, 480], [5.451979615467274, 480], [0.8294539633432481, 480], [0.9545065375182782, 480], [8.630261089651437, 480], [0, 472], [4.547906371454523, 480], [0, 474], [0, 475], [0, 476], [3.6318484944112797, 478], [0, 478], [5.299104807783019, 480], [0, 480], [0, 481]]
In [4]:
ColumnNames = [i+"diff" for i in FinalDatacity.columns[:-3]]
dataCols = {}
for i in FinalDatacity.columns[:-3]:
toAppend = []
for enum,j in enumerate(distFromRural):
toAppend.append(FinalDatacity[i][enum] - FinalDatacity[i][j[1]])
dataCols[i+"diff"] = toAppend
dataCols = pd.DataFrame(dataCols)
In [5]:
distFromRural
Out[5]:
[[0, 0], [1.638308791028131, 405], [2.769502673152689, 63], [0, 3], [0.7455686978911836, 57], [1.2971414040981657, 480], [2.9713464157292524, 240], [2.0860136308804305, 346], [1.0948987194373077, 410], [0.46701658282711317, 28], [1.7197924438813943, 449], [1.065320635928347, 406], [2.2623667781912427, 410], [0.7516367939765816, 50], [0, 14], [1.8546858688475398, 76], [1.2996256283301946, 435], [0, 17], [0, 18], [0.5394017868079837, 400], [1.4143870131538603, 476], [3.623720446521663, 240], [0, 22], [1.8593667111451533, 87], [0.7644490830955473, 50], [10000000000, 25], [2.04087997484741, 410], [0.6597568304926453, 63], [0, 28], [1.6786689356951436, 346], [2.062610909746554, 78], [0, 31], [2.1866806345978627, 263], [2.935771600506263, 78], [0, 34], [0, 35], [10000000000, 36], [0, 37], [2.653194303587799, 263], [2.6020069909540497, 162], [1.3300096192012183, 324], [0, 41], [1.0688522661836843, 78], [0, 43], [0.8076300285938196, 126], [2.1417725327606707, 172], [0, 46], [2.6103655265430628, 410], [1.0382859128317352, 171], [2.451838244615646, 263], [0, 50], [1.8821145009543456, 105], [2.3497012466809766, 476], [1.1291585532280326, 83], [1.5162559865037486, 405], [1.708791979784351, 435], [1.162842139374769, 435], [0, 57], [1.395404737581053, 407], [1.4544858484308707, 171], [1.756109056241903, 263], [0.5548689529272082, 396], [1.7191382452240682, 63], [0, 63], [0.6266755011119214, 346], [0, 65], [2.967375610457848, 472], [0.418578878184459, 81], [1.5520669375305463, 263], [0.7576625947569123, 126], [0, 70], [1.7087361780710166, 346], [0, 72], [1.142697121455943, 172], [1.8085152253723193, 263], [0.626953038396741, 245], [0, 76], [0, 77], [0, 78], [0, 79], [1.4371171749710137, 410], [0, 81], [0.9696228431610194, 406], [0, 83], [0, 84], [0.6367128013699814, 263], [2.66449125660691, 352], [0, 87], [0, 88], [0, 89], [1.1909507022547248, 340], [2.212930358451712, 352], [0, 92], [0, 93], [1.953626896026802, 240], [3.7316280517506497, 240], [1.3601613035417366, 105], [2.0367296672326014, 324], [6.533833014122211, 188], [0, 99], [0, 100], [2.4835233609025607, 476], [1.2375027865106853, 224], [0.9320222575224139, 407], [1.1131699557082602, 449], [0, 105], [2.3789037246827407, 263], [2.7720062537834513, 410], [0.7144993131898566, 396], [0, 109], [0, 110], [2.0380690067272433, 263], [1.0073811486973172, 435], [0, 113], [2.2986481577839917, 240], [1.5971923893637971, 413], [0.14709520812905252, 475], [1.3948678389657423, 388], [2.7540920760608536, 172], [0.4891080553864748, 475], [0.16759971389924533, 242], [2.790070189640854, 240], [0, 122], [2.8886905439124475, 263], [1.487495134365846, 414], [1.257237162315511, 277], [0, 126], [1.0583568818562556, 283], [0.5605906851686489, 474], [0, 129], [2.360561450609584, 240], [1.9275193475689878, 240], [2.2639211944277093, 346], [1.910039947576597, 407], [2.4160193917108965, 410], [2.2504453559884556, 346], [1.3815702440240956, 171], [2.5583883763607447, 346], [1.0283773627113137, 171], [1.3885731448326515, 406], [1.5777265711036672, 340], [1.9502448698522208, 407], [1.3889530429198287, 358], [0, 143], [1.220116539499575, 435], [0.7966468493352353, 216], [0.8396264280705681, 263], [1.9352290426056828, 346], [0, 148], [10000000000, 149], [10000000000, 150], [1.600591499792097, 406], [0, 152], [1.9830606496845962, 410], [1.7659852361564643, 263], [0.6619339342045389, 472], [2.635832029445264, 476], [0.45781382516054014, 478], [2.870892012720597, 410], [2.655433647529163, 263], [10000000000, 160], [2.693547524698266, 410], [0, 162], [0, 163], [0.8887079744950889, 352], [2.017237620083728, 257], [2.409504120433011, 449], [0.7546527260640506, 407], [0.32683618832225, 245], [2.130897769453161, 407], [10000000000, 170], [0, 171], [0, 172], [2.7677667813169795, 350], [0.768285642274246, 346], [0.7371618919311244, 240], [2.1456892119582944, 405], [1.9976893945157848, 358], [1.0474022283546152, 263], [1.1419158670429241, 480], [2.68501883043071, 406], [0, 181], [1.5649720844054464, 257], [2.041573083023767, 358], [2.7302473477194797, 240], [1.3724301619558297, 396], [0.7150927340188995, 286], [0.8349731842585738, 449], [0, 188], [1.9657263004577652, 388], [1.9584491866648492, 257], [1.734168039129961, 407], [2.6278227540027452, 396], [2.1911489751713504, 480], [0.938723617181257, 428], [0, 195], [2.4894586982268496, 263], [2.138636062150348, 263], [0.732174367128458, 277], [0, 199], [1.5854982470601686, 410], [1.5089423224680685, 263], [2.094394254572211, 324], [2.507521259768785, 346], [0, 204], [1.1490673972372278, 407], [0.4831581702781675, 388], [2.201023323344866, 406], [0, 208], [0.40928399689758066, 298], [1.874171021989116, 435], [10000000000, 211], [0, 212], [1.8392372676702977, 406], [0, 214], [0.6690785078470955, 474], [0, 216], [1.1019621812172753, 257], [2.4955517038491117, 407], [0.42077375430095826, 240], [2.0167554548282274, 340], [2.0701837430704253, 257], [4.23762931131972, 240], [0.7666073244246294, 405], [0, 224], [0.5113147197898298, 245], [1.73207999714611, 236], [1.6753519978881617, 406], [2.7549882248657203, 240], [0.6615013207279804, 240], [1.880142800142617, 476], [0.5871018554397011, 456], [1.445966864328571, 410], [3.4144304742453424, 240], [2.497657326892183, 388], [2.4198340242238827, 476], [0, 236], [1.837496703977336, 388], [0, 238], [1.080601007939523, 476], [0, 240], [1.49865558441408, 263], [0, 242], [1.0099277035891403, 472], [2.7070855319210634, 352], [0, 245], [0.5396870358738387, 413], [3.515874997446017, 472], [7.131421380000022, 358], [0.8524927132701604, 358], [0, 250], [0.1751282148707824, 456], [0, 252], [1.0817235538362417, 405], [6.462381532286107, 358], [4.725371054956049, 358], [1.5925860536503509, 352], [0, 257], [1.2423007143444675, 358], [1.3951848734907444, 406], [0.2029022927859954, 341], [2.223886726434563, 263], [1.0323461528513938, 407], [0, 263], [2.209507731793144, 480], [0, 265], [0.9025361854597229, 412], [0, 267], [0, 268], [0, 269], [2.524667916555894, 340], [1.835294905994421, 406], [0, 272], [1.9912826632557623, 476], [2.1755375528506784, 476], [5.900610558078375, 352], [3.2623598256711475, 410], [0, 277], [4.322571550923592, 358], [2.0817895993191593, 449], [1.0507678145442392, 340], [2.2001618167630443, 407], [5.011384654631627, 358], [0, 283], [0, 284], [0.7757628872181387, 406], [0, 286], [0.47246514536846734, 324], [3.4834399392990165, 358], [0, 289], [10000000000, 290], [1.943074830403567, 405], [2.2651715055181874, 410], [1.9704396365234087, 412], [2.1996095056581457, 480], [1.2966361997352713, 346], [0.8965080852178824, 410], [2.4975292746527744, 406], [0, 298], [0, 299], [1.139640721487113, 346], [1.0531105838331467, 407], [3.217329971320613, 406], [3.133765087400383, 413], [2.3805724034630438, 472], [1.2604765709113315, 346], [3.0913514341333412, 476], [0, 307], [2.6524725105036513, 472], [1.3513716254771417, 478], [4.847609591392939, 352], [0, 311], [1.288707546030232, 398], [2.7889619991981425, 412], [1.0289311768166243, 474], [1.468247478551414, 352], [4.523947449142311, 352], [1.1088824149171705, 480], [2.9446762094773193, 435], [0, 319], [3.5777450883181636, 435], [2.525015364940359, 435], [2.458033942147943, 412], [1.4342118673454711, 388], [0, 324], [1.2246599793331074, 352], [4.644347755849582, 358], [1.5603527128297687, 480], [3.361232517574771, 426], [0.6287973862557943, 413], [0, 330], [1.1637153744626836, 399], [0, 332], [2.2678820895139795, 358], [2.684463930084015, 472], [5.309638107715234, 358], [1.2678482223067384, 436], [0, 337], [0.8219654502016023, 406], [1.9247950353797922, 346], [0, 340], [0, 341], [1.6784050624071611, 480], [1.0055871179970883, 435], [1.5114614335083147, 406], [2.902299734021468, 436], [0, 346], [4.396379429667846, 352], [0, 348], [1.5970464069863541, 350], [0, 350], [2.099500791004882, 435], [0, 352], [1.6880751573662207, 410], [6.074224151987875, 358], [2.4610536562250243, 413], [0, 356], [10000000000, 357], [0, 358], [0.3303652769190925, 480], [0, 360], [2.1410824842094622, 388], [0, 362], [0, 363], [0.9334776894486472, 435], [1.1811194639171148, 414], [8.313103134739967, 413], [1.7231729037892063, 438], [0.9976281783596477, 412], [2.09845770733719, 396], [1.173963662672778, 413], [0, 371], [1.1196891434988485, 436], [10000000000, 373], [2.2437119963214265, 449], [2.5407404068408965, 406], [1.8130182218593274, 436], [1.1047096363703743, 406], [0.9459235951358776, 466], [1.1440869350071938, 438], [2.2077503436129864, 476], [2.38678550076393, 428], [0, 382], [2.880117898280653, 435], [10000000000, 384], [0, 385], [10000000000, 386], [2.7662674649042054, 476], [0, 388], [1.4217549595159313, 413], [2.086114592181432, 406], [2.677254470600251, 410], [3.0126694614588327, 436], [1.5967175790148904, 413], [0.9333228965409233, 456], [0.7089563844474572, 405], [0, 396], [0, 397], [0, 398], [0, 399], [0, 400], [2.7667090363425664, 438], [1.4977666058282302, 466], [2.8455250966221803, 412], [2.978437265598198, 476], [0, 405], [0, 406], [0, 407], [3.4743101187401044, 410], [3.096360127754343, 410], [0, 410], [1.5393378266980668, 449], [0, 412], [0, 413], [0, 414], [3.55197552898865, 449], [2.7218639717411044, 476], [3.7027506116654485, 438], [10.185659067653813, 480], [3.03964962793571, 436], [1.5823446942989345, 460], [3.523075176324985, 480], [1.0592316038566554, 436], [2.504927433876996, 436], [1.3848743042872702, 478], [3.8523429068471606, 426], [0, 426], [6.340692891755089, 480], [0, 428], [2.1867305109408113, 474], [4.847626654535793, 436], [2.8892637168176503, 456], [1.8191811794284012, 436], [1.765892503711681, 476], [2.3538324143731786, 435], [0, 435], [0, 436], [0, 437], [0, 438], [5.018267941347682, 480], [9.489248819647722, 480], [10.229833051316524, 480], [11.535565282701473, 480], [0.6701856534028731, 455], [9.793951057985732, 480], [1.5753122184483277, 466], [0.6555113730956799, 447], [0, 447], [7.729948234790333, 480], [0, 449], [0, 450], [4.082363756973568, 466], [2.149485925663521, 460], [7.3859372044915705, 480], [2.2138130941072967, 466], [0, 455], [0, 456], [0, 457], [10000000000, 458], [3.8604301711448494, 466], [0, 460], [4.582445021528957, 466], [3.227247201911366, 476], [5.046769351818752, 480], [5.314797450929531, 466], [7.331600213980269, 480], [0, 466], [10.606737910353894, 480], [5.451979615467274, 480], [0.8294539633432481, 480], [0.9545065375182782, 480], [8.630261089651437, 480], [0, 472], [4.547906371454523, 480], [0, 474], [0, 475], [0, 476], [3.6318484944112797, 478], [0, 478], [5.299104807783019, 480], [0, 480], [0, 481]]
In [6]:
FinalDatacity = pd.concat([FinalDatacity, dataCols], axis = 1)
In [7]:
distances = [i[0] for i in distFromRural]
FinalDatacity = pd.concat([FinalDatacity, pd.DataFrame({"distances":distances})], axis = 1)
In [8]:
import pandas as pd
In [9]:
for i in FinalDatacity.columns:
if i!= 'Date' and i!= 'City':
mean_value = FinalDatacity[i].mean()
FinalDatacity[i].fillna(value=mean_value, inplace=True)
FinalDatacity['City']
Out[9]:
0 Adilabad
1 Agra
2 Ahmednagar
3 Aizawl
4 Ajmer
...
477 West Tripura
478 Wokha
479 Yanam
480 Yavatmal
481 Zunheboto
Name: City, Length: 482, dtype: object
In [ ]:
In [ ]:
In [ ]:
In [10]:
FinalDatacity
Out[10]:
| ElevationData | VegetationData | ImperviousSurfaceAreaData | BuiltUpArea | PopulationDensity | B1 | B2 | B3 | B4 | B5 | ... | QA60diff | PhotosyntheticallyActiveRadiationDaily3HourDatadiff | sur_refl_b01diff | sur_refl_b04diff | sur_refl_b03diff | RainfallDatadiff | OzoneDatadiff | temp2maboveDatadiff | DownwardShortwaveRadiationDatadiff | distances | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 1.222961 | 807.519298 | 22.352473 | 11.888955 | 156.082205 | 0.160438 | 0.141787 | 0.135168 | 0.144606 | 0.147033 | ... | 0.0 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 |
| 1 | 0.210359 | 1367.832547 | 24.872523 | 17.405272 | 951.545917 | 0.184710 | 0.176045 | 0.187391 | 0.214033 | 0.219450 | ... | 0.0 | -4.726736 | 330.457247 | 371.836684 | 249.923937 | -5.886164 | 2.423765 | 0.928501 | -10.117892 | 1.638309 |
| 2 | 1.091017 | 558.408990 | 24.436156 | 14.315469 | 250.275335 | 0.168016 | 0.148329 | 0.138445 | 0.150948 | 0.151835 | ... | 0.0 | 22.193820 | -110.328122 | -149.095527 | -190.106474 | 3.531196 | 2.728874 | 0.976758 | 46.799165 | 2.769503 |
| 3 | 9.903161 | 1958.376805 | 22.178718 | 11.493150 | 89.064235 | 0.179824 | 0.163871 | 0.163698 | 0.174753 | 0.184308 | ... | 0.0 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 |
| 4 | 0.620940 | 1169.945993 | 21.381604 | 13.307855 | 254.676462 | 0.174647 | 0.166047 | 0.175552 | 0.213032 | 0.222069 | ... | 0.0 | 0.645198 | 57.177875 | 28.825165 | 4.177140 | -1.823157 | 0.952754 | 0.360028 | 0.826998 | 0.745569 |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
| 477 | 0.676866 | 1847.826439 | 19.261525 | 17.163002 | 555.499176 | 0.188754 | 0.169780 | 0.161496 | 0.137527 | 0.160690 | ... | 0.0 | 2.495489 | 371.622590 | 348.971235 | 299.794372 | -3.009153 | 0.389441 | 3.316845 | 4.298786 | 3.631848 |
| 478 | 6.996298 | 1681.648268 | 27.816976 | 11.469112 | 119.615461 | 0.179824 | 0.163871 | 0.163698 | 0.174753 | 0.184308 | ... | 0.0 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 |
| 479 | 0.131746 | 300.319689 | 17.608537 | 18.188908 | 379.181658 | 0.179824 | 0.163871 | 0.163698 | 0.174753 | 0.184308 | ... | 0.0 | -31.683406 | -293.176785 | -39.715465 | 3.695795 | -0.526061 | -3.771173 | -2.622682 | -68.908235 | 5.299105 |
| 480 | 0.813338 | 643.019435 | 23.874025 | 11.877073 | 188.873119 | 0.152141 | 0.132932 | 0.125543 | 0.136288 | 0.137624 | ... | 0.0 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 |
| 481 | 10.811397 | 928.612788 | 26.842105 | 11.398451 | 110.835207 | 0.179824 | 0.163871 | 0.163698 | 0.174753 | 0.184308 | ... | 0.0 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 |
482 rows × 62 columns
In [11]:
X = FinalDatacity[ColumnNames + ["distances"]].drop(['temp2maboveDatadiff'], axis = 1)
y = FinalDatacity['temp2maboveDatadiff']
X = X.values
y = y.values
In [12]:
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=101)
from sklearn.preprocessing import MinMaxScaler
scaler = MinMaxScaler()
X_train = scaler.fit_transform(X_train)
X_test = scaler.transform(X_test)
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Dropout
X_train.shape
Out[12]:
(337, 29)
In [13]:
from tensorflow.keras.callbacks import EarlyStopping
early_stop = EarlyStopping(monitor = 'val_loss', mode = 'min', verbose = 1,patience = 50)
In [14]:
model = Sequential()
model.add(Dense(X_train.shape[1], activation = 'relu'))
model.add(Dense(1))
model.compile(optimizer = 'adam', loss = 'mse')
In [15]:
model.fit(x= X_train, y = y_train, validation_data = (X_test, y_test), batch_size = 64, epochs = 600,callbacks=[early_stop])
Epoch 1/600 6/6 [==============================] - 0s 32ms/step - loss: 51.7783 - val_loss: 38.2301 Epoch 2/600 6/6 [==============================] - 0s 5ms/step - loss: 50.7399 - val_loss: 37.5373 Epoch 3/600 6/6 [==============================] - 0s 7ms/step - loss: 49.8584 - val_loss: 36.8692 Epoch 4/600 6/6 [==============================] - 0s 6ms/step - loss: 48.9075 - val_loss: 36.2608 Epoch 5/600 6/6 [==============================] - 0s 6ms/step - loss: 48.0197 - val_loss: 35.7313 Epoch 6/600 6/6 [==============================] - 0s 5ms/step - loss: 47.2761 - val_loss: 35.2260 Epoch 7/600 6/6 [==============================] - 0s 6ms/step - loss: 46.4870 - val_loss: 34.7596 Epoch 8/600 6/6 [==============================] - 0s 6ms/step - loss: 45.7232 - val_loss: 34.3130 Epoch 9/600 6/6 [==============================] - 0s 6ms/step - loss: 45.0438 - val_loss: 33.9177 Epoch 10/600 6/6 [==============================] - 0s 8ms/step - loss: 44.3318 - val_loss: 33.5878 Epoch 11/600 6/6 [==============================] - 0s 23ms/step - loss: 43.7187 - val_loss: 33.2938 Epoch 12/600 6/6 [==============================] - 0s 5ms/step - loss: 43.1066 - val_loss: 33.0572 Epoch 13/600 6/6 [==============================] - 0s 6ms/step - loss: 42.5991 - val_loss: 32.8484 Epoch 14/600 6/6 [==============================] - 0s 6ms/step - loss: 42.1044 - val_loss: 32.6642 Epoch 15/600 6/6 [==============================] - 0s 6ms/step - loss: 41.6910 - val_loss: 32.5167 Epoch 16/600 6/6 [==============================] - 0s 6ms/step - loss: 41.2828 - val_loss: 32.3871 Epoch 17/600 6/6 [==============================] - 0s 6ms/step - loss: 40.9631 - val_loss: 32.2653 Epoch 18/600 6/6 [==============================] - 0s 6ms/step - loss: 40.6284 - val_loss: 32.1366 Epoch 19/600 6/6 [==============================] - 0s 5ms/step - loss: 40.3341 - val_loss: 32.0007 Epoch 20/600 6/6 [==============================] - 0s 8ms/step - loss: 40.0598 - val_loss: 31.8417 Epoch 21/600 6/6 [==============================] - 0s 7ms/step - loss: 39.8255 - val_loss: 31.7227 Epoch 22/600 6/6 [==============================] - 0s 7ms/step - loss: 39.5344 - val_loss: 31.5926 Epoch 23/600 6/6 [==============================] - 0s 6ms/step - loss: 39.2494 - val_loss: 31.4134 Epoch 24/600 6/6 [==============================] - 0s 6ms/step - loss: 39.0062 - val_loss: 31.2636 Epoch 25/600 6/6 [==============================] - 0s 6ms/step - loss: 38.7548 - val_loss: 31.0713 Epoch 26/600 6/6 [==============================] - 0s 6ms/step - loss: 38.4861 - val_loss: 30.8489 Epoch 27/600 6/6 [==============================] - 0s 5ms/step - loss: 38.2449 - val_loss: 30.5956 Epoch 28/600 6/6 [==============================] - 0s 5ms/step - loss: 38.0156 - val_loss: 30.3792 Epoch 29/600 6/6 [==============================] - 0s 6ms/step - loss: 37.7460 - val_loss: 30.2033 Epoch 30/600 6/6 [==============================] - 0s 5ms/step - loss: 37.4882 - val_loss: 30.0176 Epoch 31/600 6/6 [==============================] - 0s 6ms/step - loss: 37.1909 - val_loss: 29.7957 Epoch 32/600 6/6 [==============================] - 0s 6ms/step - loss: 36.9395 - val_loss: 29.6134 Epoch 33/600 6/6 [==============================] - 0s 7ms/step - loss: 36.5935 - val_loss: 29.3761 Epoch 34/600 6/6 [==============================] - 0s 7ms/step - loss: 36.3130 - val_loss: 29.1173 Epoch 35/600 6/6 [==============================] - 0s 6ms/step - loss: 36.0304 - val_loss: 28.8850 Epoch 36/600 6/6 [==============================] - 0s 6ms/step - loss: 35.7054 - val_loss: 28.6392 Epoch 37/600 6/6 [==============================] - 0s 6ms/step - loss: 35.3717 - val_loss: 28.4052 Epoch 38/600 6/6 [==============================] - 0s 6ms/step - loss: 35.0523 - val_loss: 28.1868 Epoch 39/600 6/6 [==============================] - 0s 6ms/step - loss: 34.6928 - val_loss: 27.9367 Epoch 40/600 6/6 [==============================] - 0s 6ms/step - loss: 34.3434 - val_loss: 27.6865 Epoch 41/600 6/6 [==============================] - 0s 6ms/step - loss: 34.0003 - val_loss: 27.4138 Epoch 42/600 6/6 [==============================] - 0s 6ms/step - loss: 33.6143 - val_loss: 27.1037 Epoch 43/600 6/6 [==============================] - 0s 6ms/step - loss: 33.2687 - val_loss: 26.8171 Epoch 44/600 6/6 [==============================] - 0s 6ms/step - loss: 32.8687 - val_loss: 26.5381 Epoch 45/600 6/6 [==============================] - 0s 6ms/step - loss: 32.5120 - val_loss: 26.2562 Epoch 46/600 6/6 [==============================] - 0s 6ms/step - loss: 32.1195 - val_loss: 25.8710 Epoch 47/600 6/6 [==============================] - 0s 6ms/step - loss: 31.7219 - val_loss: 25.5110 Epoch 48/600 6/6 [==============================] - 0s 7ms/step - loss: 31.3050 - val_loss: 25.2076 Epoch 49/600 6/6 [==============================] - 0s 5ms/step - loss: 30.9245 - val_loss: 24.9452 Epoch 50/600 6/6 [==============================] - 0s 6ms/step - loss: 30.4420 - val_loss: 24.6620 Epoch 51/600 6/6 [==============================] - 0s 6ms/step - loss: 30.0674 - val_loss: 24.3908 Epoch 52/600 6/6 [==============================] - 0s 6ms/step - loss: 29.6128 - val_loss: 24.0707 Epoch 53/600 6/6 [==============================] - 0s 5ms/step - loss: 29.1848 - val_loss: 23.6714 Epoch 54/600 6/6 [==============================] - 0s 6ms/step - loss: 28.7377 - val_loss: 23.2676 Epoch 55/600 6/6 [==============================] - 0s 7ms/step - loss: 28.3016 - val_loss: 22.8404 Epoch 56/600 6/6 [==============================] - 0s 6ms/step - loss: 27.8784 - val_loss: 22.4499 Epoch 57/600 6/6 [==============================] - 0s 6ms/step - loss: 27.4865 - val_loss: 22.1029 Epoch 58/600 6/6 [==============================] - 0s 5ms/step - loss: 27.0699 - val_loss: 21.7580 Epoch 59/600 6/6 [==============================] - 0s 6ms/step - loss: 26.6569 - val_loss: 21.4936 Epoch 60/600 6/6 [==============================] - 0s 6ms/step - loss: 26.2274 - val_loss: 21.1996 Epoch 61/600 6/6 [==============================] - 0s 5ms/step - loss: 25.7631 - val_loss: 20.9465 Epoch 62/600 6/6 [==============================] - 0s 6ms/step - loss: 25.3366 - val_loss: 20.7657 Epoch 63/600 6/6 [==============================] - 0s 5ms/step - loss: 24.8794 - val_loss: 20.4136 Epoch 64/600 6/6 [==============================] - 0s 6ms/step - loss: 24.4007 - val_loss: 20.0082 Epoch 65/600 6/6 [==============================] - 0s 5ms/step - loss: 23.9663 - val_loss: 19.5911 Epoch 66/600 6/6 [==============================] - 0s 6ms/step - loss: 23.5013 - val_loss: 19.1248 Epoch 67/600 6/6 [==============================] - 0s 4ms/step - loss: 23.0992 - val_loss: 18.7579 Epoch 68/600 6/6 [==============================] - 0s 5ms/step - loss: 22.6822 - val_loss: 18.4214 Epoch 69/600 6/6 [==============================] - 0s 5ms/step - loss: 22.2339 - val_loss: 18.1523 Epoch 70/600 6/6 [==============================] - 0s 5ms/step - loss: 21.8848 - val_loss: 17.9244 Epoch 71/600 6/6 [==============================] - 0s 5ms/step - loss: 21.4168 - val_loss: 17.5677 Epoch 72/600 6/6 [==============================] - 0s 5ms/step - loss: 21.0043 - val_loss: 17.1629 Epoch 73/600 6/6 [==============================] - 0s 5ms/step - loss: 20.6151 - val_loss: 16.8320 Epoch 74/600 6/6 [==============================] - 0s 5ms/step - loss: 20.2193 - val_loss: 16.5717 Epoch 75/600 6/6 [==============================] - 0s 5ms/step - loss: 19.8321 - val_loss: 16.3570 Epoch 76/600 6/6 [==============================] - 0s 6ms/step - loss: 19.4360 - val_loss: 16.0274 Epoch 77/600 6/6 [==============================] - 0s 5ms/step - loss: 19.0405 - val_loss: 15.7896 Epoch 78/600 6/6 [==============================] - 0s 5ms/step - loss: 18.7214 - val_loss: 15.5236 Epoch 79/600 6/6 [==============================] - 0s 5ms/step - loss: 18.3195 - val_loss: 15.1523 Epoch 80/600 6/6 [==============================] - 0s 5ms/step - loss: 17.9739 - val_loss: 14.8709 Epoch 81/600 6/6 [==============================] - 0s 6ms/step - loss: 17.6068 - val_loss: 14.5990 Epoch 82/600 6/6 [==============================] - 0s 6ms/step - loss: 17.2671 - val_loss: 14.3290 Epoch 83/600 6/6 [==============================] - 0s 5ms/step - loss: 16.9429 - val_loss: 14.0584 Epoch 84/600 6/6 [==============================] - 0s 5ms/step - loss: 16.6395 - val_loss: 13.7749 Epoch 85/600 6/6 [==============================] - 0s 6ms/step - loss: 16.3196 - val_loss: 13.5572 Epoch 86/600 6/6 [==============================] - 0s 5ms/step - loss: 16.0233 - val_loss: 13.3541 Epoch 87/600 6/6 [==============================] - 0s 5ms/step - loss: 15.7076 - val_loss: 13.1130 Epoch 88/600 6/6 [==============================] - 0s 6ms/step - loss: 15.3708 - val_loss: 12.8712 Epoch 89/600 6/6 [==============================] - 0s 6ms/step - loss: 15.1008 - val_loss: 12.6650 Epoch 90/600 6/6 [==============================] - 0s 6ms/step - loss: 14.8354 - val_loss: 12.5070 Epoch 91/600 6/6 [==============================] - 0s 6ms/step - loss: 14.5523 - val_loss: 12.3230 Epoch 92/600 6/6 [==============================] - 0s 5ms/step - loss: 14.3082 - val_loss: 12.0777 Epoch 93/600 6/6 [==============================] - 0s 5ms/step - loss: 14.0672 - val_loss: 11.8258 Epoch 94/600 6/6 [==============================] - 0s 5ms/step - loss: 13.8272 - val_loss: 11.6927 Epoch 95/600 6/6 [==============================] - 0s 5ms/step - loss: 13.6065 - val_loss: 11.5696 Epoch 96/600 6/6 [==============================] - 0s 5ms/step - loss: 13.3207 - val_loss: 11.3395 Epoch 97/600 6/6 [==============================] - 0s 5ms/step - loss: 13.0841 - val_loss: 11.0967 Epoch 98/600 6/6 [==============================] - 0s 6ms/step - loss: 12.8637 - val_loss: 10.9245 Epoch 99/600 6/6 [==============================] - 0s 6ms/step - loss: 12.6623 - val_loss: 10.7595 Epoch 100/600 6/6 [==============================] - 0s 5ms/step - loss: 12.4427 - val_loss: 10.5547 Epoch 101/600 6/6 [==============================] - 0s 6ms/step - loss: 12.2750 - val_loss: 10.4141 Epoch 102/600 6/6 [==============================] - 0s 6ms/step - loss: 12.0785 - val_loss: 10.3000 Epoch 103/600 6/6 [==============================] - 0s 6ms/step - loss: 11.8918 - val_loss: 10.2182 Epoch 104/600 6/6 [==============================] - 0s 6ms/step - loss: 11.7110 - val_loss: 10.1083 Epoch 105/600 6/6 [==============================] - 0s 5ms/step - loss: 11.5331 - val_loss: 9.9643 Epoch 106/600 6/6 [==============================] - 0s 5ms/step - loss: 11.3684 - val_loss: 9.7844 Epoch 107/600 6/6 [==============================] - 0s 5ms/step - loss: 11.2287 - val_loss: 9.6572 Epoch 108/600 6/6 [==============================] - 0s 6ms/step - loss: 11.0747 - val_loss: 9.5423 Epoch 109/600 6/6 [==============================] - 0s 8ms/step - loss: 10.9110 - val_loss: 9.4283 Epoch 110/600 6/6 [==============================] - 0s 7ms/step - loss: 10.7673 - val_loss: 9.3290 Epoch 111/600 6/6 [==============================] - 0s 7ms/step - loss: 10.6199 - val_loss: 9.2191 Epoch 112/600 6/6 [==============================] - 0s 7ms/step - loss: 10.4744 - val_loss: 9.1042 Epoch 113/600 6/6 [==============================] - 0s 7ms/step - loss: 10.3521 - val_loss: 8.9968 Epoch 114/600 6/6 [==============================] - 0s 6ms/step - loss: 10.2077 - val_loss: 8.8772 Epoch 115/600 6/6 [==============================] - 0s 8ms/step - loss: 10.0989 - val_loss: 8.7682 Epoch 116/600 6/6 [==============================] - 0s 8ms/step - loss: 9.9725 - val_loss: 8.6278 Epoch 117/600 6/6 [==============================] - 0s 7ms/step - loss: 9.8601 - val_loss: 8.5342 Epoch 118/600 6/6 [==============================] - 0s 8ms/step - loss: 9.7480 - val_loss: 8.4891 Epoch 119/600 6/6 [==============================] - 0s 8ms/step - loss: 9.6188 - val_loss: 8.3783 Epoch 120/600 6/6 [==============================] - 0s 8ms/step - loss: 9.4951 - val_loss: 8.2503 Epoch 121/600 6/6 [==============================] - 0s 7ms/step - loss: 9.3923 - val_loss: 8.1532 Epoch 122/600 6/6 [==============================] - 0s 8ms/step - loss: 9.2955 - val_loss: 8.0647 Epoch 123/600 6/6 [==============================] - 0s 6ms/step - loss: 9.2126 - val_loss: 7.9748 Epoch 124/600 6/6 [==============================] - 0s 6ms/step - loss: 9.1117 - val_loss: 7.9075 Epoch 125/600 6/6 [==============================] - 0s 5ms/step - loss: 9.0102 - val_loss: 7.8649 Epoch 126/600 6/6 [==============================] - 0s 6ms/step - loss: 8.8980 - val_loss: 7.7729 Epoch 127/600 6/6 [==============================] - 0s 5ms/step - loss: 8.8154 - val_loss: 7.7034 Epoch 128/600 6/6 [==============================] - 0s 6ms/step - loss: 8.7167 - val_loss: 7.5979 Epoch 129/600 6/6 [==============================] - 0s 5ms/step - loss: 8.6455 - val_loss: 7.5156 Epoch 130/600 6/6 [==============================] - 0s 5ms/step - loss: 8.6117 - val_loss: 7.4422 Epoch 131/600 6/6 [==============================] - 0s 5ms/step - loss: 8.5318 - val_loss: 7.3733 Epoch 132/600 6/6 [==============================] - 0s 7ms/step - loss: 8.4285 - val_loss: 7.3388 Epoch 133/600 6/6 [==============================] - 0s 6ms/step - loss: 8.3748 - val_loss: 7.2984 Epoch 134/600 6/6 [==============================] - 0s 5ms/step - loss: 8.2771 - val_loss: 7.1944 Epoch 135/600 6/6 [==============================] - 0s 5ms/step - loss: 8.1864 - val_loss: 7.0959 Epoch 136/600 6/6 [==============================] - 0s 5ms/step - loss: 8.1178 - val_loss: 7.0228 Epoch 137/600 6/6 [==============================] - 0s 5ms/step - loss: 8.0566 - val_loss: 6.9563 Epoch 138/600 6/6 [==============================] - 0s 6ms/step - loss: 7.9897 - val_loss: 6.9057 Epoch 139/600 6/6 [==============================] - 0s 5ms/step - loss: 7.9138 - val_loss: 6.8458 Epoch 140/600 6/6 [==============================] - 0s 5ms/step - loss: 7.8739 - val_loss: 6.8084 Epoch 141/600 6/6 [==============================] - 0s 7ms/step - loss: 7.8065 - val_loss: 6.7307 Epoch 142/600 6/6 [==============================] - 0s 6ms/step - loss: 7.7430 - val_loss: 6.6541 Epoch 143/600 6/6 [==============================] - 0s 5ms/step - loss: 7.6982 - val_loss: 6.5946 Epoch 144/600 6/6 [==============================] - 0s 5ms/step - loss: 7.6253 - val_loss: 6.5529 Epoch 145/600 6/6 [==============================] - 0s 5ms/step - loss: 7.5720 - val_loss: 6.5143 Epoch 146/600 6/6 [==============================] - 0s 5ms/step - loss: 7.5229 - val_loss: 6.4515 Epoch 147/600 6/6 [==============================] - 0s 6ms/step - loss: 7.4755 - val_loss: 6.3808 Epoch 148/600 6/6 [==============================] - 0s 6ms/step - loss: 7.4167 - val_loss: 6.3223 Epoch 149/600 6/6 [==============================] - 0s 5ms/step - loss: 7.3555 - val_loss: 6.2510 Epoch 150/600 6/6 [==============================] - 0s 6ms/step - loss: 7.3376 - val_loss: 6.1996 Epoch 151/600 6/6 [==============================] - 0s 5ms/step - loss: 7.2887 - val_loss: 6.1640 Epoch 152/600 6/6 [==============================] - 0s 5ms/step - loss: 7.2207 - val_loss: 6.1235 Epoch 153/600 6/6 [==============================] - 0s 6ms/step - loss: 7.1710 - val_loss: 6.0844 Epoch 154/600 6/6 [==============================] - 0s 5ms/step - loss: 7.1549 - val_loss: 6.0556 Epoch 155/600 6/6 [==============================] - 0s 6ms/step - loss: 7.0841 - val_loss: 5.9775 Epoch 156/600 6/6 [==============================] - 0s 5ms/step - loss: 7.0411 - val_loss: 5.9081 Epoch 157/600 6/6 [==============================] - 0s 6ms/step - loss: 7.0077 - val_loss: 5.8780 Epoch 158/600 6/6 [==============================] - 0s 7ms/step - loss: 6.9879 - val_loss: 5.8323 Epoch 159/600 6/6 [==============================] - 0s 6ms/step - loss: 6.9732 - val_loss: 5.8137 Epoch 160/600 6/6 [==============================] - 0s 35ms/step - loss: 6.8757 - val_loss: 5.7695 Epoch 161/600 6/6 [==============================] - 0s 6ms/step - loss: 6.8133 - val_loss: 5.7429 Epoch 162/600 6/6 [==============================] - 0s 8ms/step - loss: 6.8160 - val_loss: 5.7391 Epoch 163/600 6/6 [==============================] - 0s 10ms/step - loss: 6.7339 - val_loss: 5.6647 Epoch 164/600 6/6 [==============================] - 0s 7ms/step - loss: 6.6986 - val_loss: 5.6290 Epoch 165/600 6/6 [==============================] - 0s 7ms/step - loss: 6.6578 - val_loss: 5.6027 Epoch 166/600 6/6 [==============================] - 0s 6ms/step - loss: 6.6252 - val_loss: 5.5701 Epoch 167/600 6/6 [==============================] - 0s 5ms/step - loss: 6.5893 - val_loss: 5.5468 Epoch 168/600 6/6 [==============================] - 0s 5ms/step - loss: 6.5558 - val_loss: 5.5241 Epoch 169/600 6/6 [==============================] - 0s 6ms/step - loss: 6.5166 - val_loss: 5.4647 Epoch 170/600 6/6 [==============================] - 0s 5ms/step - loss: 6.4814 - val_loss: 5.4268 Epoch 171/600 6/6 [==============================] - 0s 5ms/step - loss: 6.4592 - val_loss: 5.3923 Epoch 172/600 6/6 [==============================] - 0s 5ms/step - loss: 6.4220 - val_loss: 5.3755 Epoch 173/600 6/6 [==============================] - 0s 6ms/step - loss: 6.3748 - val_loss: 5.3389 Epoch 174/600 6/6 [==============================] - 0s 6ms/step - loss: 6.3426 - val_loss: 5.3272 Epoch 175/600 6/6 [==============================] - 0s 4ms/step - loss: 6.3106 - val_loss: 5.2836 Epoch 176/600 6/6 [==============================] - 0s 5ms/step - loss: 6.2664 - val_loss: 5.2406 Epoch 177/600 6/6 [==============================] - 0s 5ms/step - loss: 6.2249 - val_loss: 5.2067 Epoch 178/600 6/6 [==============================] - 0s 5ms/step - loss: 6.1928 - val_loss: 5.1741 Epoch 179/600 6/6 [==============================] - 0s 7ms/step - loss: 6.1616 - val_loss: 5.1449 Epoch 180/600 6/6 [==============================] - 0s 6ms/step - loss: 6.1393 - val_loss: 5.1264 Epoch 181/600 6/6 [==============================] - 0s 6ms/step - loss: 6.1058 - val_loss: 5.0962 Epoch 182/600 6/6 [==============================] - 0s 5ms/step - loss: 6.0779 - val_loss: 5.0701 Epoch 183/600 6/6 [==============================] - 0s 6ms/step - loss: 6.0558 - val_loss: 5.0437 Epoch 184/600 6/6 [==============================] - 0s 5ms/step - loss: 6.0254 - val_loss: 5.0162 Epoch 185/600 6/6 [==============================] - 0s 6ms/step - loss: 6.0006 - val_loss: 4.9919 Epoch 186/600 6/6 [==============================] - 0s 5ms/step - loss: 5.9883 - val_loss: 4.9750 Epoch 187/600 6/6 [==============================] - 0s 5ms/step - loss: 5.9443 - val_loss: 4.9533 Epoch 188/600 6/6 [==============================] - 0s 8ms/step - loss: 5.9146 - val_loss: 4.9284 Epoch 189/600 6/6 [==============================] - 0s 6ms/step - loss: 5.8951 - val_loss: 4.9167 Epoch 190/600 6/6 [==============================] - 0s 8ms/step - loss: 5.8977 - val_loss: 4.9096 Epoch 191/600 6/6 [==============================] - 0s 6ms/step - loss: 5.8858 - val_loss: 4.8698 Epoch 192/600 6/6 [==============================] - 0s 6ms/step - loss: 5.8261 - val_loss: 4.8623 Epoch 193/600 6/6 [==============================] - 0s 5ms/step - loss: 5.8084 - val_loss: 4.8468 Epoch 194/600 6/6 [==============================] - 0s 5ms/step - loss: 5.7941 - val_loss: 4.8325 Epoch 195/600 6/6 [==============================] - 0s 5ms/step - loss: 5.7582 - val_loss: 4.8154 Epoch 196/600 6/6 [==============================] - 0s 5ms/step - loss: 5.7350 - val_loss: 4.7938 Epoch 197/600 6/6 [==============================] - 0s 6ms/step - loss: 5.7087 - val_loss: 4.7736 Epoch 198/600 6/6 [==============================] - 0s 5ms/step - loss: 5.6836 - val_loss: 4.7599 Epoch 199/600 6/6 [==============================] - 0s 5ms/step - loss: 5.6635 - val_loss: 4.7387 Epoch 200/600 6/6 [==============================] - 0s 5ms/step - loss: 5.6355 - val_loss: 4.7244 Epoch 201/600 6/6 [==============================] - 0s 5ms/step - loss: 5.6184 - val_loss: 4.7131 Epoch 202/600 6/6 [==============================] - 0s 6ms/step - loss: 5.6045 - val_loss: 4.6974 Epoch 203/600 6/6 [==============================] - 0s 5ms/step - loss: 5.5849 - val_loss: 4.6842 Epoch 204/600 6/6 [==============================] - 0s 5ms/step - loss: 5.5660 - val_loss: 4.6696 Epoch 205/600 6/6 [==============================] - 0s 6ms/step - loss: 5.5353 - val_loss: 4.6579 Epoch 206/600 6/6 [==============================] - 0s 5ms/step - loss: 5.5222 - val_loss: 4.6458 Epoch 207/600 6/6 [==============================] - 0s 6ms/step - loss: 5.5197 - val_loss: 4.6370 Epoch 208/600 6/6 [==============================] - 0s 5ms/step - loss: 5.4918 - val_loss: 4.6153 Epoch 209/600 6/6 [==============================] - 0s 5ms/step - loss: 5.4734 - val_loss: 4.6117 Epoch 210/600 6/6 [==============================] - 0s 5ms/step - loss: 5.4544 - val_loss: 4.5970 Epoch 211/600 6/6 [==============================] - 0s 6ms/step - loss: 5.4379 - val_loss: 4.5813 Epoch 212/600 6/6 [==============================] - 0s 7ms/step - loss: 5.4158 - val_loss: 4.5674 Epoch 213/600 6/6 [==============================] - 0s 7ms/step - loss: 5.3927 - val_loss: 4.5601 Epoch 214/600 6/6 [==============================] - 0s 7ms/step - loss: 5.3782 - val_loss: 4.5516 Epoch 215/600 6/6 [==============================] - 0s 8ms/step - loss: 5.3597 - val_loss: 4.5443 Epoch 216/600 6/6 [==============================] - 0s 11ms/step - loss: 5.3467 - val_loss: 4.5371 Epoch 217/600 6/6 [==============================] - 0s 8ms/step - loss: 5.3331 - val_loss: 4.5218 Epoch 218/600 6/6 [==============================] - 0s 8ms/step - loss: 5.3085 - val_loss: 4.5122 Epoch 219/600 6/6 [==============================] - 0s 7ms/step - loss: 5.2902 - val_loss: 4.5066 Epoch 220/600 6/6 [==============================] - 0s 7ms/step - loss: 5.2727 - val_loss: 4.5058 Epoch 221/600 6/6 [==============================] - 0s 7ms/step - loss: 5.2615 - val_loss: 4.4993 Epoch 222/600 6/6 [==============================] - 0s 6ms/step - loss: 5.2561 - val_loss: 4.4948 Epoch 223/600 6/6 [==============================] - 0s 6ms/step - loss: 5.2275 - val_loss: 4.4755 Epoch 224/600 6/6 [==============================] - 0s 7ms/step - loss: 5.2104 - val_loss: 4.4708 Epoch 225/600 6/6 [==============================] - 0s 12ms/step - loss: 5.1997 - val_loss: 4.4650 Epoch 226/600 6/6 [==============================] - 0s 8ms/step - loss: 5.1861 - val_loss: 4.4575 Epoch 227/600 6/6 [==============================] - 0s 7ms/step - loss: 5.1730 - val_loss: 4.4545 Epoch 228/600 6/6 [==============================] - 0s 7ms/step - loss: 5.1510 - val_loss: 4.4469 Epoch 229/600 6/6 [==============================] - 0s 7ms/step - loss: 5.1371 - val_loss: 4.4423 Epoch 230/600 6/6 [==============================] - 0s 7ms/step - loss: 5.1378 - val_loss: 4.4322 Epoch 231/600 6/6 [==============================] - 0s 6ms/step - loss: 5.1099 - val_loss: 4.4398 Epoch 00231: early stopping
Out[15]:
<tensorflow.python.keras.callbacks.History at 0x156e66fb070>
In [16]:
import pandas as pd
from plotly import __version__
# # import cufflinks as cf
# # from plotly.offline import download_plotlyjs, init_notebook_mode, plot, iplot
# init_notebook_mode(connected=True)
# cf.go_offline()
losses = pd.DataFrame(model.history.history)
In [17]:
losses.plot()
Out[17]:
<Axes: >
In [18]:
from sklearn.metrics import mean_squared_error, mean_absolute_error,explained_variance_score
In [19]:
# predictionstest = model.predict(Xxtest)
predictionstrain = model.predict(X_test)
In [20]:
import numpy as np
print(np.sqrt(mean_squared_error(y_test,predictionstrain)))
print(mean_absolute_error(y_test, predictionstrain))
2.107087741590458 1.4628880162954556
In [21]:
import os
os.getcwd()
Out[21]:
'C:\\Users\\harshit\\Documents'
In [22]:
weights = model.get_weights()
len(weights)
Out[22]:
4
In [23]:
feature_importance = np.sum(np.abs(weights[0]), axis=1)
In [24]:
dataaaa = {"name":[],"values":[]}
for enum,i in enumerate(feature_importance):
dataaaa["name"].append(FinalDatacity[ColumnNames+["distances"]].drop(['temp2maboveDatadiff'], axis = 1).columns[enum])
dataaaa["values"].append(i)
plot = pd.DataFrame(dataaaa).sort_values(by="values",ascending=False)
import matplotlib.pyplot as plt
import numpy as np
x = plot["name"]
y = plot["values"]
colors = ['yellowgreen','red','gold','lightskyblue','white','lightcoral','blue','pink', 'darkgreen','yellow','grey','violet','magenta','cyan']
porcent = 100.*y/y.sum()
patches, texts = plt.pie(y, colors=colors, startangle=90, radius=1.2)
labels = ['{0} - {1:1.2f} %'.format(i,j) for i,j in zip(x, porcent)]
sort_legend = True
if sort_legend:
patches, labels, dummy = zip(*sorted(zip(patches, labels, y),
key=lambda x: x[2],
reverse=True))
plt.legend(patches, labels, bbox_to_anchor=(-0.1, 1.),
fontsize=8)
plt.savefig('piechart.png', bbox_inches='tight')
In [25]:
# for i in FinalDatacity['City']:
# try:
# city = (
# ee.FeatureCollection('FAO/GAUL_SIMPLIFIED_500m/2015/level2')
# .filter("ADM2_NAME == '{}'".format(i))
# .filter(ee.Filter.eq('ADM2_NAME', '{}'.format(i))) # Exactly the same as above.
# )
# x = FinalDatacity[FinalDatacity['City']==i].index.values.astype(int)[0]
# val = str(0000 + FinalDatacity['temp2maboveDatadiff'][x])
# num = len(val)
# while num<4:
# val = val + '0'
# num+=1
# except:
# continue
# try:
# m.addLayer(city, {'color': 'FF{}'.format(val)}, i)
# except:
# continue
import json
import plotly.express as px
india_districts = json.load(open(r"C:\Users\harshit\Downloads\india_district.geojson"))
print(india_districts['features'][0]['properties'])
district_id_map = {}
for feature in india_districts['features']:
feature['id'] = feature['properties']['ID_2']
district_id_map[feature['properties']['NAME_2']] = feature['id']
{'ID_0': 105, 'ISO': 'IND', 'NAME_0': 'India', 'ID_1': 1, 'NAME_1': 'Andaman and Nicobar', 'ID_2': 1, 'NAME_2': 'Andaman Islands', 'NL_NAME_2': None, 'VARNAME_2': None, 'TYPE_2': 'District', 'ENGTYPE_2': 'District'}
In [26]:
# Remove rows with NaN values in the 'City' column
FinalDatacity.dropna(subset=['City'], inplace=True)
# Apply lambda function to map city names to district IDs, skipping rows with NaN values
FinalDatacity['id'] = FinalDatacity['City'].apply(lambda x: district_id_map[x] if x in district_id_map else None)
FinalDatacity
Out[26]:
| ElevationData | VegetationData | ImperviousSurfaceAreaData | BuiltUpArea | PopulationDensity | B1 | B2 | B3 | B4 | B5 | ... | PhotosyntheticallyActiveRadiationDaily3HourDatadiff | sur_refl_b01diff | sur_refl_b04diff | sur_refl_b03diff | RainfallDatadiff | OzoneDatadiff | temp2maboveDatadiff | DownwardShortwaveRadiationDatadiff | distances | id | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 1.222961 | 807.519298 | 22.352473 | 11.888955 | 156.082205 | 0.160438 | 0.141787 | 0.135168 | 0.144606 | 0.147033 | ... | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 3.0 |
| 1 | 0.210359 | 1367.832547 | 24.872523 | 17.405272 | 951.545917 | 0.184710 | 0.176045 | 0.187391 | 0.214033 | 0.219450 | ... | -4.726736 | 330.457247 | 371.836684 | 249.923937 | -5.886164 | 2.423765 | 0.928501 | -10.117892 | 1.638309 | 493.0 |
| 2 | 1.091017 | 558.408990 | 24.436156 | 14.315469 | 250.275335 | 0.168016 | 0.148329 | 0.138445 | 0.150948 | 0.151835 | ... | 22.193820 | -110.328122 | -149.095527 | -190.106474 | 3.531196 | 2.728874 | 0.976758 | 46.799165 | 2.769503 | 306.0 |
| 3 | 9.903161 | 1958.376805 | 22.178718 | 11.493150 | 89.064235 | 0.179824 | 0.163871 | 0.163698 | 0.174753 | 0.184308 | ... | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 356.0 |
| 4 | 0.620940 | 1169.945993 | 21.381604 | 13.307855 | 254.676462 | 0.174647 | 0.166047 | 0.175552 | 0.213032 | 0.222069 | ... | 0.645198 | 57.177875 | 28.825165 | 4.177140 | -1.823157 | 0.952754 | 0.360028 | 0.826998 | 0.745569 | 423.0 |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
| 477 | 0.676866 | 1847.826439 | 19.261525 | 17.163002 | 555.499176 | 0.188754 | 0.169780 | 0.161496 | 0.137527 | 0.160690 | ... | 2.495489 | 371.622590 | 348.971235 | 299.794372 | -3.009153 | 0.389441 | 3.316845 | 4.298786 | 3.631848 | 492.0 |
| 478 | 6.996298 | 1681.648268 | 27.816976 | 11.469112 | 119.615461 | 0.179824 | 0.163871 | 0.163698 | 0.174753 | 0.184308 | ... | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 370.0 |
| 479 | 0.131746 | 300.319689 | 17.608537 | 18.188908 | 379.181658 | 0.179824 | 0.163871 | 0.163698 | 0.174753 | 0.184308 | ... | -31.683406 | -293.176785 | -39.715465 | 3.695795 | -0.526061 | -3.771173 | -2.622682 | -68.908235 | 5.299105 | 405.0 |
| 480 | 0.813338 | 643.019435 | 23.874025 | 11.877073 | 188.873119 | 0.152141 | 0.132932 | 0.125543 | 0.136288 | 0.137624 | ... | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 339.0 |
| 481 | 10.811397 | 928.612788 | 26.842105 | 11.398451 | 110.835207 | 0.179824 | 0.163871 | 0.163698 | 0.174753 | 0.184308 | ... | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 0.000000 | 371.0 |
461 rows × 63 columns
In [48]:
import numpy as np
from numpy import ma
FinalDatacity["temp2maboveDatadiffScale"] = ma.filled(np.log10(ma.masked_equal(FinalDatacity['temp2maboveDatadiff'], 0)), 0)
fig = px.choropleth(FinalDatacity, locations = 'id', geojson = india_districts, color = 'temp2maboveDatadiffScale',color_continuous_scale="Viridis",hover_data= ["temp2maboveDatadiff","City"])
fig.update_geos(fitbounds = "locations", visible = True)
fig.update_layout(height=1000, width=1200)
fig.update_coloraxes(colorbar=dict(thickness=20, len=0.7, y=0.5))
fig.show()
C:\Users\harshit\AppData\Local\Temp\ipykernel_847648\2281103562.py:3: RuntimeWarning: divide by zero encountered in log10 C:\Users\harshit\AppData\Local\Temp\ipykernel_847648\2281103562.py:3: RuntimeWarning: invalid value encountered in log10